<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html
  SYSTEM "about:legacy-compat">
<html xmlns:mml = "http://www.w3.org/1998/Math/MathML" lang = "en"><head><meta charset = "UTF-8"/><meta name = "copyright" content = "(C) Copyright 2020"/><meta name = "DC.rights.owner" content = "(C) Copyright 2020"/><meta name = "DC.type" content = "concept"/><meta name = "abstract" content = "This topic provides an example of XML code created for a custom animation. To create your own custom animations, you must be proficient in XML."/><meta name = "description" content = "This topic provides an example of XML code created for a custom animation. To create your own custom animations, you must be proficient in XML."/><meta name = "DC.format" content = "HTML5"/><meta name = "DC.identifier" content = "cps-c-Animations-XMLExample"/><meta name = "DC.language" content = "en"/><link rel = "stylesheet" type = "text/css" href = "../DSDocUI_XML34.css"/><title>Custom Animation XML Example</title>
<script type = "text/javascript" src = "../DSDocUI_Highlight34.js">
  	/* */
  	</script></head><body onLoad = "highlightSearchTerms();" id = "cps-c-Animations-XMLExample">
<a name = "hj-top"> </a><table class = "table1" id = "table11"><tr><td><table class = "DocHeader"><tr><td class = "DocHeader1" colspan = "2"><h1>Custom Animation XML Example</h1></td></tr><tr><td class = "DocHeader4" colspan = "2"/></tr><tr><td class = "DocHeader3" colspan = "2"><table class = "DocThemeIntro" id = "table12"><tr><td class = "Intro1Only"><p class = "header"><p class = "abstract"> 
	 <span class = "shortdesc">This topic provides an example of XML code created for a custom
		animation. To create your own custom animations, you must be proficient in XML.
		
	 </span>
 
	 <table class = "Remark" id = "table132"><tr><td class = "Remark"><span class = "run-in.tip">Tip:
				</span><span class = "notecontent">In larger companies, this task could be devoted to 
    a documentation architect.</span></td></tr></table>
 
	 <p> 
		<table class = "Remark" id = "table132"><tr><td class = "Remark"><span class = "run-in.important">Important:
				</span><span class = "notecontent">Before reading this, make sure that you understand
		  the concepts described in 
		  <a class = "xref" href = "cps-c-Animations.htm#cps-c-Animations" title = "Composer uses key-frame based animation, which lets you build animations by arranging actors and taking snapshots at moments in time, called key frames. A set of pre-defined, generic animations is provided with Composer to let you create simple animations quickly, via the Animation Library workshop. Users proficient in XML can create their own custom animations.">About the Animation Library</a>. 
		</span></td></tr></table>
 
	 </p> 
	  
  </p>
<p>This page discusses: </p><ul><li><a href = "#c-BasicConcepts" id = "toc_rg" title = "Each animation group corresponds to a dedicated folder in your Animation Library folder. Each folder stores a number of XML files that make up the animations of the group. Each XML file defines a single animation. An animation is created in the XML file using the single &lt;Step&gt; element.">Basic Concepts</a></li><li><a href = "#c-CodeExample" id = "toc_rg" title = "Here are examples of XML codes that you could write to create a custom animation called &#34;Review&#34;, and to be able to mirror it.">XML Code Example</a></li><li><a href = "#c-CodeDescription" id = "toc_rg" title = "The XML elements shown in the code example above are described here.">Code Description</a></li></ul>
</p></td></tr></table></td></tr></table> 
  
 
   
  <article class = "topic concept nested1" aria-labelledby = "ariaid-title2" id = "c-BasicConcepts"> 
	 <h2 class = "title topictitle2">Basic Concepts</h2>
 
	  
	 <div class = "body conbody"><p class = "abstract"> 
		<span class = "shortdesc">Each animation group corresponds to a dedicated folder in your
		  Animation Library folder. Each folder stores a number of XML files that make up
		  the animations of the group. Each XML file defines a single animation. An
		  animation is created in the XML file using the single 
		  <code class = "ph codeph">&lt;Step&gt;</code> element. 
		</span>
 
	 </p>
 
		<p>For each animation/step, you can specify: 
		<ul class = "ul"> 
		  <li class = "li">whether or not to allow the user to modify the property values in
			 the Animation Library workshop. 
		  </li> 
		  <li class = "li">whether or not to make the angle, axis, and distance properties of
			 animated actors editable in the Animation Library workshop, when property
			 values are not modifiable. 
		  </li> 
		  <li class = "li">whether to hide or to show the 
			 <span class = "ph uicontrol">Start time</span> and 
			 <span class = "ph uicontrol">End time</span> property values in the Animation
			 Library workshop. 
		  </li> 
		</ul> 
		</p> 
		<p>An animation/step can have one or several motions. Individual motions
		  are pre-defined, and each motion has a set of pre-defined properties. 
		</p> 
		<table class = "Remark" id = "table132"><tr><td class = "Remark"><span class = "run-in.tip">Tip:
				</span><span class = "notecontent">For ease of use, it is recommended to reuse the content
		  of individual 
		  <code class = "ph codeph">&lt;Motion&gt;</code> elements (with the whole property set)
		  from the pre-defined XML files provided by default in the Animation Library.
		  You can customize the values of each property of the property set. Examples of
		  reusable 
		  <code class = "ph codeph">&lt;Motion&gt;</code> elements are highlighted in the XML
		  code example below. 
		</span></td></tr></table>
 
	 </div>
 
  </article> 
  <article class = "topic concept nested1" aria-labelledby = "ariaid-title3" id = "c-CodeExample"> 
	 <p><map name = "FPMap1"><area href = "#hj-top" title = "Back to Top" shape = "rect" coords = "416, 0, 435, 10"/></map><span class = "itemsprite"/></p><h2 class = "title topictitle2">XML Code Example</h2>
 
	  
	 <div class = "body conbody"><p class = "abstract"> 
		<span class = "shortdesc">Here are examples of XML codes that you could write to create
		  a custom animation called "Review", and to be able to mirror it. 
		</span>
 
	 </p>
 
		<p> 
		  <br/><img border = "1" class = "image" src = "../CpsUserImages/CustomAnimationXML.png"/><br/> 
		</p> 
	 </div>
 
  </article> 
  <article class = "topic concept nested1" aria-labelledby = "ariaid-title4" id = "c-CodeDescription"> 
	 <p><map name = "FPMap1"><area href = "#hj-top" title = "Back to Top" shape = "rect" coords = "416, 0, 435, 10"/></map><span class = "itemsprite"/></p><h2 class = "title topictitle2">Code Description</h2>
 
	  
	 <div class = "body conbody"><p class = "abstract"> 
		<span class = "shortdesc">The XML elements shown in the code example above are described
		  here. 
		</span>
 
	 </p>
 
		<dl class = "dl"> 
		   
			 <dt class = "dt dlterm">&lt;Step&gt; 
			 </dt> 
			 <dd class = "dd">Creates an animation. Parameters are as follows: 
			 </dd> 
			 <dd class = "dd ddexpand"><kbd class = "ph userinput userinput">Name</kbd>: Text displayed to identify the
				animation in the Animation Library workshop. 
			 </dd> 
			 <dd class = "dd ddexpand"><kbd class = "ph userinput userinput">ReadOnly</kbd>: Specifies whether or not to
				allow the user to modify the property values in the Animation Library workshop.
				
				<ul class = "ul"> 
				  <li class = "li"><kbd class = "ph userinput userinput">"0"</kbd>: Allows the user to modify the
					 property values. 
				  </li> 
				  <li class = "li"><kbd class = "ph userinput userinput">"1"</kbd>: Prevents the user from modifying
					 the property values. 
				  </li> 
				</ul> 
			 </dd> 
			 <dd class = "dd ddexpand">(Optional) 
				<kbd class = "ph userinput userinput">MakeAngleAxisDistPtEditable</kbd>: Specifies
				whether or not to make the angle, axis, distance, and point properties of
				animated actors editable in the Animation Library workshop, when 
				<kbd class = "ph userinput userinput">ReadOnly</kbd> is set to 
				<kbd class = "ph userinput userinput">"1"</kbd>. 
				<ul class = "ul"> 
				  <li class = "li"><kbd class = "ph userinput userinput">"0"</kbd>: Prevents the user from modifying
					 the angle, axis, distance, and point properties of animated actors.
				  </li> 
				  <li class = "li"><kbd class = "ph userinput userinput">"1"</kbd>: Allows the user to modify the
					 angle, axis, distance, and point properties of animated actors.
				  </li> 
				</ul> 
			 </dd> 
			 <dd class = "dd ddexpand"><kbd class = "ph userinput userinput">ShowStartEnd</kbd>: For each motion of the
				animation, specifies whether to hide or to show the 
				<span class = "ph uicontrol">Start time</span> and 
				<span class = "ph uicontrol">End time</span> property values in the Animation
				Library workshop. 
				<ul class = "ul"> 
				  <li class = "li"><kbd class = "ph userinput userinput">"0"</kbd>: Hides 
					 <span class = "ph uicontrol">Start time</span> and 
					 <span class = "ph uicontrol">End time</span>. 
				  </li> 
				  <li class = "li"><kbd class = "ph userinput userinput">"1"</kbd>: Shows 
					 <span class = "ph uicontrol">Start time</span> and 
					 <span class = "ph uicontrol">End time</span>. 
				  </li> 
				</ul> 
			 </dd> 
		   
		   
			 <dt class = "dt dlterm">&lt;Modifiables&gt; 
			 </dt> 
			 <dd class = "dd">Introduces the various motions that make up the animation.
				Standalone, compulsory element. 
			 </dd> 
		   
		   
			 <dt class = "dt dlterm">&lt;Motions&gt; 
			 </dt> 
			 <dd class = "dd">Introduces the individual motions that make up the animation. 
			 </dd> 
		   
		   
			 <dt class = "dt dlterm">&lt;Motion&gt; 
			 </dt> 
			 <dd class = "dd">Creates an individual motion within the animation. Each motion
				has the following parameter: 
			 </dd> 
			 <dd class = "dd ddexpand"><kbd class = "ph userinput userinput">Name</kbd>: Text displayed to identify the
				motion in the Animation Library workshop. 
			 </dd> 
			 <dd class = "dd ddexpand">(Optional) 
				<kbd class = "ph userinput userinput">ApplyWhenMirrored</kbd>: For each motion of the
				animation, specifies whether or not to ignore the original animation definition
				and to use the motion definition described in the mirrored XML. 
				<ul class = "ul"> 
				  <li class = "li"><kbd class = "ph userinput userinput">"0"</kbd>: Applies the original animation
					 definition in the mirrored XML. 
				  </li> 
				  <li class = "li"><kbd class = "ph userinput userinput">"1"</kbd>: Ignores the original animation
					 definition and uses the motion definition described in the mirrored XML. 
				  </li> 
				</ul> 
			 </dd> 
			 <dd class = "dd ddexpand">(Optional) 
				<kbd class = "ph userinput userinput">Defined</kbd>: For the 
				<kbd class = "ph userinput userinput">Motion.Color</kbd> property of the 
				<kbd class = "ph userinput userinput">Flash</kbd> and 
				<kbd class = "ph userinput userinput">SetColor</kbd> motions, specifies whether or not
				to change the color of the selected actor during this step of the animation. 
				<ul class = "ul"> 
				  <li class = "li"><kbd class = "ph userinput userinput">"0"</kbd>: Sets the color to Undefined. 
				  </li> 
				  <li class = "li"><kbd class = "ph userinput userinput">"1"</kbd>: Takes the RGB values into
					 account. 
				  </li> 
				</ul> 
				<div class = "note"><span class = "run-in.note">Note:
			</span><span class = "notecontent">If you do not specify a 
				  <kbd class = "ph userinput userinput">Defined</kbd> parameter, the RGB values are
				  taken into account. 
				</span></div>
 
			 </dd> 
		   
		   
			 <dt class = "dt dlterm">&lt;PropSet&gt; 
			 </dt> 
			 <dd class = "dd">Introduces the property set of the motion. 
			 </dd> 
		   
		   
			 <dt class = "dt dlterm">&lt;Motion.XXX&gt; 
			 </dt> 
			 <dd class = "dd">Defines each property of the motion, using one or several
				parameters. 
			 </dd> 
		   
		   
			 <dt class = "dt dlterm">&lt;Links&gt; 
			 </dt> 
			 <dd class = "dd">(Optional) Defines a link type to other animations. 
				<div class = "note"><span class = "run-in.note">Note:
			</span><span class = "notecontent">If you do not use this XML element, there is no mirrored
				  version of this animation. 
				</span></div>
 
			 </dd> 
		   
		   
			 <dt class = "dt dlterm">&lt;Mirror&gt; 
			 </dt> 
			 <dd class = "dd">(Optional) Creates a mirror link type. Parameters are as follows:
				
			 </dd> 
			 <dd class = "dd ddexpand"><kbd class = "ph userinput userinput">FolderName</kbd>: Name of the folder where the
				XML file describing the animation to mirror is located. 
			 </dd> 
			 <dd class = "dd ddexpand"><kbd class = "ph userinput userinput">FileName</kbd>: Name of the XML file describing
				the animation to mirror. 
			 </dd> 
			 <dd class = "dd ddexpand"> 
				<div class = "note"><span class = "run-in.note">Note:
			</span><span class = "notecontent">Both the 
				  <kbd class = "ph userinput userinput">FolderName</kbd> and 
				  <kbd class = "ph userinput userinput">FileName</kbd> parameters are case-sensitive. 
				</span></div>
 
			 </dd> 
		   
		</dl> 
	 </div>
 
  </article> 
</td></tr></table><script type = "text/javascript" src = "../DSDocUI_Bottom34.js">/* */</script></body>
</html>
