bug fixes
This commit is contained in:
		
							parent
							
								
									bdbf3ee9dd
								
							
						
					
					
						commit
						6a4ee4702b
					
				| @ -1,3 +1,11 @@ | ||||
| 2010-03-05  Sampo Niskanen | ||||
| 
 | ||||
| 	* [BUG] Fixed exception for fins with small root chord | ||||
| 
 | ||||
| 2010-02-26  Sampo Niskanen | ||||
| 
 | ||||
| 	* Simulation panel max.acceleration now from flight stage only | ||||
| 
 | ||||
| 2010-02-17  Sampo Niskanen | ||||
| 
 | ||||
| 	* Released version 0.9.6 | ||||
|  | ||||
							
								
								
									
										4
									
								
								TODO
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								TODO
									
									
									
									
									
								
							| @ -7,7 +7,7 @@ Must-have: | ||||
| 
 | ||||
| - Go through thrust curves and select best ones | ||||
| - Updated splash screen | ||||
| 
 | ||||
| - BUG: Invalid fin points possible when removing points | ||||
| 
 | ||||
| Maybe: | ||||
| 
 | ||||
| @ -167,3 +167,5 @@ In 0.9.6: | ||||
|   exponential growth until time step is reached (t1 = 1.5*t0) | ||||
| - Limit time step during while on launch rod | ||||
| - Re-investigate 15% reduction of three-fin CNa | ||||
| In 0.9.7: | ||||
| - BUG: Simulation table max. acceleration takes into account parachute deceleration | ||||
|  | ||||
							
								
								
									
										91
									
								
								doc/simulation-2.0.uml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								doc/simulation-2.0.uml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,91 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <uml:Package xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" xmi:id="_J062EPIyEd6814i1KDlzfw" name="net.sf.openrocket.simulation"> | ||||
|   <elementImport xmi:id="_J8VFoPIyEd6814i1KDlzfw"> | ||||
|     <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/> | ||||
|   </elementImport> | ||||
|   <elementImport xmi:id="_J8VFofIyEd6814i1KDlzfw"> | ||||
|     <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> | ||||
|   </elementImport> | ||||
|   <elementImport xmi:id="_J8VssPIyEd6814i1KDlzfw"> | ||||
|     <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/> | ||||
|   </elementImport> | ||||
|   <elementImport xmi:id="_J8VssfIyEd6814i1KDlzfw"> | ||||
|     <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> | ||||
|   </elementImport> | ||||
|   <packagedElement xmi:type="uml:Class" xmi:id="_Tba2QPIyEd6814i1KDlzfw" name="BasicSimulationEngine" clientDependency="_-iWDsPIzEd6814i1KDlzfw"> | ||||
|     <interfaceRealization xmi:id="_-iWDsPIzEd6814i1KDlzfw" supplier="_cpXMgPIyEd6814i1KDlzfw" client="_Tba2QPIyEd6814i1KDlzfw" contract="_cpXMgPIyEd6814i1KDlzfw"/> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Interface" xmi:id="_cpXMgPIyEd6814i1KDlzfw" name="SimulationEngine"> | ||||
|     <ownedOperation xmi:id="_f7S3UPIyEd6814i1KDlzfw" name="simulate"> | ||||
|       <ownedParameter xmi:id="_lcXTMPIyEd6814i1KDlzfw" direction="return"/> | ||||
|       <ownedParameter xmi:id="_lcX6QPIyEd6814i1KDlzfw" name="SimulationConditions"/> | ||||
|     </ownedOperation> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Interface" xmi:id="_E_lM4PI0Ed6814i1KDlzfw" name="SimulationCalculator"> | ||||
|     <ownedOperation xmi:id="_Zi4R0PI0Ed6814i1KDlzfw" name="step"> | ||||
|       <ownedParameter xmi:id="_ag6nYPI0Ed6814i1KDlzfw" direction="return"/> | ||||
|       <ownedParameter xmi:id="_ag6nYfI0Ed6814i1KDlzfw" name="SimulationStatus"/> | ||||
|     </ownedOperation> | ||||
|     <ownedOperation xmi:id="_4Xf1kPI0Ed6814i1KDlzfw" name="initialize"> | ||||
|       <ownedParameter xmi:id="_5bYUcPI0Ed6814i1KDlzfw" direction="return"/> | ||||
|       <ownedParameter xmi:id="_5bY7gPI0Ed6814i1KDlzfw" name="SimulationStatus"/> | ||||
|     </ownedOperation> | ||||
|     <ownedOperation xmi:id="_5w4qYPI0Ed6814i1KDlzfw" name="store"> | ||||
|       <ownedParameter xmi:id="_6n_4kPI0Ed6814i1KDlzfw" direction="return"/> | ||||
|       <ownedParameter xmi:id="_6oAfoPI0Ed6814i1KDlzfw" name="SimulationStatus"/> | ||||
|     </ownedOperation> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Class" xmi:id="_GxqOgPI0Ed6814i1KDlzfw" name="CartesianCalculator" clientDependency="_SwleoPI0Ed6814i1KDlzfw"> | ||||
|     <interfaceRealization xmi:id="_SwleoPI0Ed6814i1KDlzfw" supplier="_E_lM4PI0Ed6814i1KDlzfw" client="_GxqOgPI0Ed6814i1KDlzfw" contract="_E_lM4PI0Ed6814i1KDlzfw"/> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Class" xmi:id="_JF1QkPI0Ed6814i1KDlzfw" name="CartesianLaunchCalculator"> | ||||
|     <generalization xmi:id="_PK6YcPI0Ed6814i1KDlzfw" general="_GxqOgPI0Ed6814i1KDlzfw"/> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Class" xmi:id="_LMYtYPI0Ed6814i1KDlzfw" name="CartesianFlightCalculator"> | ||||
|     <generalization xmi:id="_PzSAAPI0Ed6814i1KDlzfw" general="_GxqOgPI0Ed6814i1KDlzfw"/> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Class" xmi:id="_MplrMPI0Ed6814i1KDlzfw" name="CartesianLandingCalculator"> | ||||
|     <generalization xmi:id="_QQTTMPI0Ed6814i1KDlzfw" general="_GxqOgPI0Ed6814i1KDlzfw"/> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Class" xmi:id="_TpljMPI0Ed6814i1KDlzfw" name="SphericalCalculator" clientDependency="_Vi51QPI0Ed6814i1KDlzfw"> | ||||
|     <interfaceRealization xmi:id="_Vi51QPI0Ed6814i1KDlzfw" supplier="_E_lM4PI0Ed6814i1KDlzfw" client="_TpljMPI0Ed6814i1KDlzfw" contract="_E_lM4PI0Ed6814i1KDlzfw"/> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Class" xmi:id="_dO-wIPI0Ed6814i1KDlzfw" name="AbstractSimulationStatus (?)" clientDependency="_WkCPYPJmEd6814i1KDlzfw" isAbstract="true"> | ||||
|     <interfaceRealization xmi:id="_WkCPYPJmEd6814i1KDlzfw" supplier="_CNJOwPJmEd6814i1KDlzfw" client="_dO-wIPI0Ed6814i1KDlzfw" contract="_CNJOwPJmEd6814i1KDlzfw"/> | ||||
|     <ownedOperation xmi:id="_fWLGIPI0Ed6814i1KDlzfw" name="getPosition"> | ||||
|       <ownedParameter xmi:id="_hKvbEPI0Ed6814i1KDlzfw" direction="return"/> | ||||
|     </ownedOperation> | ||||
|     <ownedOperation xmi:id="_hhJI4PI0Ed6814i1KDlzfw" name="getAltitude"> | ||||
|       <ownedParameter xmi:id="_iJ4j4PI0Ed6814i1KDlzfw" direction="return"/> | ||||
|     </ownedOperation> | ||||
|     <ownedOperation xmi:id="_inlMgPI0Ed6814i1KDlzfw" name="getOrientation"> | ||||
|       <ownedParameter xmi:id="_jSE7API0Ed6814i1KDlzfw" direction="return"/> | ||||
|     </ownedOperation> | ||||
|     <ownedOperation xmi:id="_1aRPcPI0Ed6814i1KDlzfw" name="getConfiguration"> | ||||
|       <ownedParameter xmi:id="_2T4YAPI0Ed6814i1KDlzfw" direction="return"/> | ||||
|     </ownedOperation> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Class" xmi:id="_oIIrAPI0Ed6814i1KDlzfw" name="CartesianSimulationStatus"> | ||||
|     <generalization xmi:id="_qQ68cPI0Ed6814i1KDlzfw" general="_dO-wIPI0Ed6814i1KDlzfw"/> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Class" xmi:id="_GqNGMPI1Ed6814i1KDlzfw" name="SphericalSimulationStatus"> | ||||
|     <generalization xmi:id="_JAnj8PI1Ed6814i1KDlzfw" general="_dO-wIPI0Ed6814i1KDlzfw"/> | ||||
|   </packagedElement> | ||||
|   <packagedElement xmi:type="uml:Interface" xmi:id="_CNJOwPJmEd6814i1KDlzfw" name="SimulationStatus"> | ||||
|     <ownedOperation xmi:id="_EEdVsPJmEd6814i1KDlzfw" name="getAltitude"> | ||||
|       <ownedParameter xmi:id="_FBjQEPJmEd6814i1KDlzfw" direction="return"/> | ||||
|     </ownedOperation> | ||||
|     <ownedOperation xmi:id="_FUn9EPJmEd6814i1KDlzfw" name="getPosition"> | ||||
|       <ownedParameter xmi:id="_F9Z0UPJmEd6814i1KDlzfw" direction="return"/> | ||||
|     </ownedOperation> | ||||
|     <ownedOperation xmi:id="_GxzFsPJmEd6814i1KDlzfw" name="getVelocity"> | ||||
|       <ownedParameter xmi:id="_HuFu0PJmEd6814i1KDlzfw" direction="return"/> | ||||
|     </ownedOperation> | ||||
|     <ownedOperation xmi:id="_IGCUwPJmEd6814i1KDlzfw" name="getSpeed"> | ||||
|       <ownedParameter xmi:id="_IfWzsPJmEd6814i1KDlzfw" direction="return"/> | ||||
|     </ownedOperation> | ||||
|     <ownedOperation xmi:id="_JT0WgPJmEd6814i1KDlzfw" name="getConfiguration"> | ||||
|       <ownedParameter xmi:id="_J4oTwPJmEd6814i1KDlzfw" direction="return"/> | ||||
|     </ownedOperation> | ||||
|   </packagedElement> | ||||
| </uml:Package> | ||||
							
								
								
									
										479
									
								
								doc/simulation-2.0.umlclass
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										479
									
								
								doc/simulation-2.0.umlclass
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,479 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" xmi:id="_J8WTwPIyEd6814i1KDlzfw" type="UMLClass" name="simulation-2.0.umlclass" measurementUnit="Pixel"> | ||||
|   <children xmi:type="notation:Node" xmi:id="_PJd44PIyEd6814i1KDlzfw" type="2014"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_PJfHAPIyEd6814i1KDlzfw" type="5020"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_PJfHAfIyEd6814i1KDlzfw" type="7032"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_PJfHAvIyEd6814i1KDlzfw" collapsed="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_PJfHA_IyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_PJfuEPIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_PJfuEfIyEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_PJd44fIyEd6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:Package" href="simulation-2.0.uml#_J062EPIyEd6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PJef8PIyEd6814i1KDlzfw"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_Tns-wPIyEd6814i1KDlzfw" type="2001"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Tnx3QPIyEd6814i1KDlzfw" type="5003"> | ||||
|       <styles xmi:type="notation:FontStyle" xmi:id="_TrWvsPIyEd6814i1KDlzfw" bold="true"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_TnzFYPIyEd6814i1KDlzfw" type="5019"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Tn2vwPIyEd6814i1KDlzfw" type="7001"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_Tn2vwfIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_Tn2vwvIyEd6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_Tn2vw_IyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_Tn2vxPIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_Tn2vxfIyEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_ToC9APIyEd6814i1KDlzfw" type="7002"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_ToC9AfIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_ToC9AvIyEd6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_ToC9A_IyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_ToC9BPIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_ToC9BfIyEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_ToFZQPIyEd6814i1KDlzfw" type="7003"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_ToFZQfIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_ToFZQvIyEd6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_ToFZQ_IyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_ToFZRPIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_ToFZRfIyEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_Tns-wfIyEd6814i1KDlzfw" fontName="Sans"/> | ||||
|     <styles xmi:type="notation:CanonicalStyle" xmi:id="_Tns-wvIyEd6814i1KDlzfw"/> | ||||
|     <element xmi:type="uml:Class" href="simulation-2.0.uml#_Tba2QPIyEd6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Tns-w_IyEd6814i1KDlzfw" x="24" y="264"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_cqKdwPIyEd6814i1KDlzfw" type="2013"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_cqM6APIyEd6814i1KDlzfw" type="5018"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_cqTAoPIyEd6814i1KDlzfw" type="7029"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_cqTAofIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_cqTAovIyEd6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_cqTAo_IyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_cqTnsPIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_cqTnsfIyEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_cqWrAPIyEd6814i1KDlzfw" type="7030"> | ||||
|       <children xmi:type="notation:Node" xmi:id="_f8HWsPIyEd6814i1KDlzfw" type="3029"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_f7S3UPIyEd6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_f8HWsfIyEd6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_cqWrAfIyEd6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_cqXSEPIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_cqXSEfIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_cqXSEvIyEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_cqgcAPIyEd6814i1KDlzfw" type="7031"> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_cqgcAfIyEd6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_cqgcAvIyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_cqgcA_IyEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_cqgcBPIyEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_cqKdwfIyEd6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:Interface" href="simulation-2.0.uml#_cpXMgPIyEd6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cqKdwvIyEd6814i1KDlzfw" x="12" y="96"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_FAHYYPI0Ed6814i1KDlzfw" type="2013"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_FAJNkPI0Ed6814i1KDlzfw" type="5018"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_FALCwPI0Ed6814i1KDlzfw" type="7029"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_FALCwfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_FALCwvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_FALCw_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_FALCxPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_FALCxfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_FAMQ4PI0Ed6814i1KDlzfw" type="7030"> | ||||
|       <children xmi:type="notation:Node" xmi:id="_ZjnRoPI0Ed6814i1KDlzfw" type="3029"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_Zi4R0PI0Ed6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_ZjnRofI0Ed6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <children xmi:type="notation:Node" xmi:id="_4X6sUPI0Ed6814i1KDlzfw" type="3029"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_4Xf1kPI0Ed6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_4X6sUfI0Ed6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <children xmi:type="notation:Node" xmi:id="_5xThIPI0Ed6814i1KDlzfw" type="3029"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_5w4qYPI0Ed6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_5xThIfI0Ed6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_FAMQ4fI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_FAMQ4vI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_FAMQ4_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_FAMQ5PI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_FANfAPI0Ed6814i1KDlzfw" type="7031"> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_FANfAfI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_FANfAvI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_FANfA_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_FANfBPI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_FAHYYfI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:Interface" href="simulation-2.0.uml#_E_lM4PI0Ed6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FAHYYvI0Ed6814i1KDlzfw" x="420" y="103"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_GyzeAPI0Ed6814i1KDlzfw" type="2001"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gy0sIPI0Ed6814i1KDlzfw" type="5003"> | ||||
|       <styles xmi:type="notation:FontStyle" xmi:id="_GzGY8PI0Ed6814i1KDlzfw" bold="true"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gy1TMPI0Ed6814i1KDlzfw" type="5019"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gy16QPI0Ed6814i1KDlzfw" type="7001"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_Gy16QfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_Gy16QvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_Gy16Q_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_Gy16RPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_Gy16RfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gy2hUPI0Ed6814i1KDlzfw" type="7002"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_Gy2hUfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_Gy2hUvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_Gy2hU_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_Gy2hVPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_Gy2hVfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gy3vcPI0Ed6814i1KDlzfw" type="7003"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_Gy3vcfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_Gy3vcvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_Gy3vc_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_Gy3vdPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_Gy3vdfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_GyzeAfI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <styles xmi:type="notation:CanonicalStyle" xmi:id="_GyzeAvI0Ed6814i1KDlzfw"/> | ||||
|     <element xmi:type="uml:Class" href="simulation-2.0.uml#_GxqOgPI0Ed6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GyzeA_I0Ed6814i1KDlzfw" x="367" y="344"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_JGxEsPI0Ed6814i1KDlzfw" type="2001"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_JGyS0PI0Ed6814i1KDlzfw" type="5003"> | ||||
|       <styles xmi:type="notation:FontStyle" xmi:id="_JHBjYPI0Ed6814i1KDlzfw" bold="true"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_JGy54PI0Ed6814i1KDlzfw" type="5019"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_JGy54fI0Ed6814i1KDlzfw" type="7001"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_JGy54vI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_JGy54_I0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_JGy55PI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_JGy55fI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_JGy55vI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_JG0IAPI0Ed6814i1KDlzfw" type="7002"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_JG0IAfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_JG0IAvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_JG0IA_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_JG0IBPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_JG0IBfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_JG0vEPI0Ed6814i1KDlzfw" type="7003"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_JG0vEfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_JG0vEvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_JG0vE_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_JG0vFPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_JG0vFfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_JGxEsfI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <styles xmi:type="notation:CanonicalStyle" xmi:id="_JGxEsvI0Ed6814i1KDlzfw"/> | ||||
|     <element xmi:type="uml:Class" href="simulation-2.0.uml#_JF1QkPI0Ed6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JGxEs_I0Ed6814i1KDlzfw" x="201" y="498"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_LNeSgPI0Ed6814i1KDlzfw" type="2001"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_LNfgoPI0Ed6814i1KDlzfw" type="5003"> | ||||
|       <styles xmi:type="notation:FontStyle" xmi:id="_LNm1YPI0Ed6814i1KDlzfw" bold="true"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_LNfgofI0Ed6814i1KDlzfw" type="5019"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_LNgHsPI0Ed6814i1KDlzfw" type="7001"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_LNgHsfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_LNgHsvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_LNgHs_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_LNgHtPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_LNgHtfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_LNguwPI0Ed6814i1KDlzfw" type="7002"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_LNguwfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_LNguwvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_LNguw_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_LNguxPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_LNguxfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_LNhV0PI0Ed6814i1KDlzfw" type="7003"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_LNhV0fI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_LNh84PI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_LNh84fI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_LNh84vI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_LNh84_I0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_LNeSgfI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <styles xmi:type="notation:CanonicalStyle" xmi:id="_LNeSgvI0Ed6814i1KDlzfw"/> | ||||
|     <element xmi:type="uml:Class" href="simulation-2.0.uml#_LMYtYPI0Ed6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LNeSg_I0Ed6814i1KDlzfw" x="359" y="597"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_Mqo0EPI0Ed6814i1KDlzfw" type="2001"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_MqqCMPI0Ed6814i1KDlzfw" type="5003"> | ||||
|       <styles xmi:type="notation:FontStyle" xmi:id="_Mqx-API0Ed6814i1KDlzfw" bold="true"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_MqqpQPI0Ed6814i1KDlzfw" type="5019"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_MqqpQfI0Ed6814i1KDlzfw" type="7001"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_MqqpQvI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_MqqpQ_I0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_MqqpRPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_MqqpRfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_MqqpRvI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_MqrQUPI0Ed6814i1KDlzfw" type="7002"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_MqrQUfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_MqrQUvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_MqrQU_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_Mqr3YPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_Mqr3YfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_MqsecPI0Ed6814i1KDlzfw" type="7003"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_MqsecfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_MqsecvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_Mqsec_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_MqsedPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_MqsedfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_Mqo0EfI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <styles xmi:type="notation:CanonicalStyle" xmi:id="_Mqo0EvI0Ed6814i1KDlzfw"/> | ||||
|     <element xmi:type="uml:Class" href="simulation-2.0.uml#_MplrMPI0Ed6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Mqo0E_I0Ed6814i1KDlzfw" x="511" y="486"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_TqEEUPI0Ed6814i1KDlzfw" type="2001"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_TqF5gPI0Ed6814i1KDlzfw" type="5003"> | ||||
|       <styles xmi:type="notation:FontStyle" xmi:id="_TqNOQPI0Ed6814i1KDlzfw" bold="true"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_TqF5gfI0Ed6814i1KDlzfw" type="5019"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_TqGgkPI0Ed6814i1KDlzfw" type="7001"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_TqGgkfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_TqGgkvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_TqGgk_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_TqGglPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_TqGglfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_TqHHoPI0Ed6814i1KDlzfw" type="7002"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_TqHHofI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_TqHHovI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_TqHHo_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_TqHHpPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_TqHHpfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_TqHusPI0Ed6814i1KDlzfw" type="7003"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_TqIVwPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_TqIVwfI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_TqIVwvI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_TqIVw_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_TqIVxPI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_TqErYPI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <styles xmi:type="notation:CanonicalStyle" xmi:id="_TqErYfI0Ed6814i1KDlzfw"/> | ||||
|     <element xmi:type="uml:Class" href="simulation-2.0.uml#_TpljMPI0Ed6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TqErYvI0Ed6814i1KDlzfw" x="600" y="348" height="37"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_dPmbMPI0Ed6814i1KDlzfw" type="2001"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_dPnpUPI0Ed6814i1KDlzfw" type="5003"> | ||||
|       <styles xmi:type="notation:FontStyle" xmi:id="_dPvlIPI0Ed6814i1KDlzfw" bold="true" italic="true"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_dPoQYPI0Ed6814i1KDlzfw" type="5019"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_dPoQYfI0Ed6814i1KDlzfw" type="7001"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_dPoQYvI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_dPoQY_I0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_dPoQZPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_dPoQZfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_dPoQZvI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_dPo3cPI0Ed6814i1KDlzfw" type="7002"> | ||||
|       <children xmi:type="notation:Node" xmi:id="_fW2bkPI0Ed6814i1KDlzfw" type="3002"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_fWLGIPI0Ed6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_fW2bkfI0Ed6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <children xmi:type="notation:Node" xmi:id="_hh9BMPI0Ed6814i1KDlzfw" type="3002"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_hhJI4PI0Ed6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_hh9BMfI0Ed6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <children xmi:type="notation:Node" xmi:id="_ioBRYPI0Ed6814i1KDlzfw" type="3002"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_inlMgPI0Ed6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_ioBRYfI0Ed6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <children xmi:type="notation:Node" xmi:id="_1asGMPI0Ed6814i1KDlzfw" type="3002"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_1aRPcPI0Ed6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_1asGMfI0Ed6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_dPo3cfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_dPo3cvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_dPpegPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_dPpegfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_dPpegvI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_dPqFkPI0Ed6814i1KDlzfw" type="7003"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_dPqFkfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_dPqFkvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_dPqFk_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_dPqFlPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_dPqFlfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_dPmbMfI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <styles xmi:type="notation:CanonicalStyle" xmi:id="_dPmbMvI0Ed6814i1KDlzfw"/> | ||||
|     <element xmi:type="uml:Class" href="simulation-2.0.uml#_dO-wIPI0Ed6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dPmbM_I0Ed6814i1KDlzfw" x="900" y="324"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_oI5gAPI0Ed6814i1KDlzfw" type="2001"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_oI6uIPI0Ed6814i1KDlzfw" type="5003"> | ||||
|       <styles xmi:type="notation:FontStyle" xmi:id="_oJCp8PI0Ed6814i1KDlzfw" bold="true"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_oI7VMPI0Ed6814i1KDlzfw" type="5019"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_oI78QPI0Ed6814i1KDlzfw" type="7001"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_oI78QfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_oI78QvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_oI78Q_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_oI78RPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_oI78RfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_oI8jUPI0Ed6814i1KDlzfw" type="7002"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_oI8jUfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_oI8jUvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_oI8jU_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_oI8jVPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_oI8jVfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_oI9KYPI0Ed6814i1KDlzfw" type="7003"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_oI9KYfI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_oI9KYvI0Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_oI9KY_I0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_oI9KZPI0Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_oI9KZfI0Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_oI5gAfI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <styles xmi:type="notation:CanonicalStyle" xmi:id="_oI5gAvI0Ed6814i1KDlzfw"/> | ||||
|     <element xmi:type="uml:Class" href="simulation-2.0.uml#_oIIrAPI0Ed6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oI5gA_I0Ed6814i1KDlzfw" x="840" y="504"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_Gq8GAPI1Ed6814i1KDlzfw" type="2001"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gq9UIPI1Ed6814i1KDlzfw" type="5003"> | ||||
|       <styles xmi:type="notation:FontStyle" xmi:id="_GrF3API1Ed6814i1KDlzfw" bold="true"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gq97MPI1Ed6814i1KDlzfw" type="5019"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gq97MfI1Ed6814i1KDlzfw" type="7001"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_Gq97MvI1Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_Gq97M_I1Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_Gq97NPI1Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_Gq97NfI1Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_Gq97NvI1Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gq-iQPI1Ed6814i1KDlzfw" type="7002"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_Gq-iQfI1Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_Gq-iQvI1Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_Gq_JUPI1Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_Gq_JUfI1Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_Gq_JUvI1Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_Gq_wYPI1Ed6814i1KDlzfw" type="7003"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_Gq_wYfI1Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_Gq_wYvI1Ed6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_Gq_wY_I1Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_Gq_wZPI1Ed6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_Gq_wZfI1Ed6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_Gq8GAfI1Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <styles xmi:type="notation:CanonicalStyle" xmi:id="_Gq8GAvI1Ed6814i1KDlzfw"/> | ||||
|     <element xmi:type="uml:Class" href="simulation-2.0.uml#_GqNGMPI1Ed6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gq8GA_I1Ed6814i1KDlzfw" x="1068" y="504"/> | ||||
|   </children> | ||||
|   <children xmi:type="notation:Node" xmi:id="_CNqMIPJmEd6814i1KDlzfw" type="2013"> | ||||
|     <children xmi:type="notation:Node" xmi:id="_CNqzMPJmEd6814i1KDlzfw" type="5018"/> | ||||
|     <children xmi:type="notation:Node" xmi:id="_CNraQPJmEd6814i1KDlzfw" type="7029"> | ||||
|       <styles xmi:type="notation:DrawerStyle" xmi:id="_CNraQfJmEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_CNraQvJmEd6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_CNraQ_JmEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_CNraRPJmEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_CNraRfJmEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_CNsoYPJmEd6814i1KDlzfw" type="7030"> | ||||
|       <children xmi:type="notation:Node" xmi:id="_EE720PJmEd6814i1KDlzfw" type="3029"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_EEdVsPJmEd6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_EE720fJmEd6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <children xmi:type="notation:Node" xmi:id="_FVAXkPJmEd6814i1KDlzfw" type="3029"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_FUn9EPJmEd6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_FVAXkfJmEd6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <children xmi:type="notation:Node" xmi:id="_GyMHQPJmEd6814i1KDlzfw" type="3029"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_GxzFsPJmEd6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_GyMHQfJmEd6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <children xmi:type="notation:Node" xmi:id="_IGb9YPJmEd6814i1KDlzfw" type="3029"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_IGCUwPJmEd6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_IGb9YfJmEd6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <children xmi:type="notation:Node" xmi:id="_JUPNQPJmEd6814i1KDlzfw" type="3029"> | ||||
|         <element xmi:type="uml:Operation" href="simulation-2.0.uml#_JT0WgPJmEd6814i1KDlzfw"/> | ||||
|         <layoutConstraint xmi:type="notation:Location" xmi:id="_JUPNQfJmEd6814i1KDlzfw"/> | ||||
|       </children> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_CNsoYfJmEd6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_CNsoYvJmEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_CNsoY_JmEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_CNsoZPJmEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <children xmi:type="notation:Node" xmi:id="_CNtPcPJmEd6814i1KDlzfw" type="7031"> | ||||
|       <styles xmi:type="notation:TitleStyle" xmi:id="_CNtPcfJmEd6814i1KDlzfw" showTitle="true"/> | ||||
|       <styles xmi:type="notation:SortingStyle" xmi:id="_CNtPcvJmEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:FilteringStyle" xmi:id="_CNtPc_JmEd6814i1KDlzfw"/> | ||||
|       <styles xmi:type="notation:CanonicalStyle" xmi:id="_CNtPdPJmEd6814i1KDlzfw"/> | ||||
|     </children> | ||||
|     <styles xmi:type="notation:ShapeStyle" xmi:id="_CNqMIfJmEd6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:Interface" href="simulation-2.0.uml#_CNJOwPJmEd6814i1KDlzfw"/> | ||||
|     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CNqMIvJmEd6814i1KDlzfw" x="936" y="60"/> | ||||
|   </children> | ||||
|   <styles xmi:type="notation:DiagramStyle" xmi:id="_J8WTwfIyEd6814i1KDlzfw"/> | ||||
|   <styles xmi:type="notation:FilteringStyle" xmi:id="_J8WTwvIyEd6814i1KDlzfw"/> | ||||
|   <element xmi:type="uml:Package" href="simulation-2.0.uml#_J062EPIyEd6814i1KDlzfw"/> | ||||
|   <edges xmi:type="notation:Edge" xmi:id="_-ifNoPIzEd6814i1KDlzfw" type="4008" source="_Tns-wPIyEd6814i1KDlzfw" target="_cqKdwPIyEd6814i1KDlzfw"> | ||||
|     <styles xmi:type="notation:ConnectorStyle" xmi:id="_-ifNofIzEd6814i1KDlzfw"/> | ||||
|     <styles xmi:type="notation:FontStyle" xmi:id="_-ifNovIzEd6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:InterfaceRealization" href="simulation-2.0.uml#_-iWDsPIzEd6814i1KDlzfw"/> | ||||
|     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-ifNo_IzEd6814i1KDlzfw" points="[5, -45, -11, 193]$[42, -185, 26, 53]"/> | ||||
|   </edges> | ||||
|   <edges xmi:type="notation:Edge" xmi:id="_PK-p4PI0Ed6814i1KDlzfw" type="4001" source="_JGxEsPI0Ed6814i1KDlzfw" target="_GyzeAPI0Ed6814i1KDlzfw"> | ||||
|     <styles xmi:type="notation:ConnectorStyle" xmi:id="_PK-p4fI0Ed6814i1KDlzfw"/> | ||||
|     <styles xmi:type="notation:FontStyle" xmi:id="_PK-p4vI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:Generalization" href="simulation-2.0.uml#_PK6YcPI0Ed6814i1KDlzfw"/> | ||||
|     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PK-p4_I0Ed6814i1KDlzfw" points="[43, -45, -98, 109]$[227, -155, 86, -1]"/> | ||||
|   </edges> | ||||
|   <edges xmi:type="notation:Edge" xmi:id="_PzUcQPI0Ed6814i1KDlzfw" type="4001" source="_LNeSgPI0Ed6814i1KDlzfw" target="_GyzeAPI0Ed6814i1KDlzfw"> | ||||
|     <styles xmi:type="notation:ConnectorStyle" xmi:id="_PzUcQfI0Ed6814i1KDlzfw"/> | ||||
|     <styles xmi:type="notation:FontStyle" xmi:id="_PzUcQvI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:Generalization" href="simulation-2.0.uml#_PzSAAPI0Ed6814i1KDlzfw"/> | ||||
|     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PzUcQ_I0Ed6814i1KDlzfw" points="[-1, -45, 11, 208]$[74, -250, 86, 3]"/> | ||||
|   </edges> | ||||
|   <edges xmi:type="notation:Edge" xmi:id="_QQVIYPI0Ed6814i1KDlzfw" type="4001" source="_Mqo0EPI0Ed6814i1KDlzfw" target="_GyzeAPI0Ed6814i1KDlzfw"> | ||||
|     <styles xmi:type="notation:ConnectorStyle" xmi:id="_QQVIYfI0Ed6814i1KDlzfw"/> | ||||
|     <styles xmi:type="notation:FontStyle" xmi:id="_QQVIYvI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:Generalization" href="simulation-2.0.uml#_QQTTMPI0Ed6814i1KDlzfw"/> | ||||
|     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QQVIY_I0Ed6814i1KDlzfw" points="[-55, -45, 117, 97]$[-94, -96, 78, 46]"/> | ||||
|   </edges> | ||||
|   <edges xmi:type="notation:Edge" xmi:id="_Sw0IIPI0Ed6814i1KDlzfw" type="4008" source="_GyzeAPI0Ed6814i1KDlzfw" target="_FAHYYPI0Ed6814i1KDlzfw"> | ||||
|     <styles xmi:type="notation:ConnectorStyle" xmi:id="_Sw0IIfI0Ed6814i1KDlzfw"/> | ||||
|     <styles xmi:type="notation:FontStyle" xmi:id="_Sw0IIvI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:InterfaceRealization" href="simulation-2.0.uml#_SwleoPI0Ed6814i1KDlzfw"/> | ||||
|     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Sw0II_I0Ed6814i1KDlzfw" points="[9, -45, -37, 196]$[70, -286, 24, -45]"/> | ||||
|   </edges> | ||||
|   <edges xmi:type="notation:Edge" xmi:id="_VjKT8PI0Ed6814i1KDlzfw" type="4008" source="_TqEEUPI0Ed6814i1KDlzfw" target="_FAHYYPI0Ed6814i1KDlzfw"> | ||||
|     <styles xmi:type="notation:ConnectorStyle" xmi:id="_VjKT8fI0Ed6814i1KDlzfw"/> | ||||
|     <styles xmi:type="notation:FontStyle" xmi:id="_VjKT8vI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:InterfaceRealization" href="simulation-2.0.uml#_Vi51QPI0Ed6814i1KDlzfw"/> | ||||
|     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VjKT8_I0Ed6814i1KDlzfw" points="[-54, -45, 191, 161]$[-210, -184, 35, 22]"/> | ||||
|     <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VjhgUPI0Ed6814i1KDlzfw" id="(0.7358491,0.7582418)"/> | ||||
|   </edges> | ||||
|   <edges xmi:type="notation:Edge" xmi:id="_qQ-m0PI0Ed6814i1KDlzfw" type="4001" source="_oI5gAPI0Ed6814i1KDlzfw" target="_dPmbMPI0Ed6814i1KDlzfw"> | ||||
|     <styles xmi:type="notation:ConnectorStyle" xmi:id="_qQ-m0fI0Ed6814i1KDlzfw"/> | ||||
|     <styles xmi:type="notation:FontStyle" xmi:id="_qQ-m0vI0Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:Generalization" href="simulation-2.0.uml#_qQ68cPI0Ed6814i1KDlzfw"/> | ||||
|     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_qQ-m0_I0Ed6814i1KDlzfw" points="[-15, -45, 39, 153]$[-127, -249, -73, -51]"/> | ||||
|   </edges> | ||||
|   <edges xmi:type="notation:Edge" xmi:id="_JArOUPI1Ed6814i1KDlzfw" type="4001" source="_Gq8GAPI1Ed6814i1KDlzfw" target="_dPmbMPI0Ed6814i1KDlzfw"> | ||||
|     <styles xmi:type="notation:ConnectorStyle" xmi:id="_JArOUfI1Ed6814i1KDlzfw"/> | ||||
|     <styles xmi:type="notation:FontStyle" xmi:id="_JArOUvI1Ed6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:Generalization" href="simulation-2.0.uml#_JAnj8PI1Ed6814i1KDlzfw"/> | ||||
|     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JArOU_I1Ed6814i1KDlzfw" points="[-67, -45, 173, 129]$[-313, -171, -73, 3]"/> | ||||
|   </edges> | ||||
|   <edges xmi:type="notation:Edge" xmi:id="_WkRf8PJmEd6814i1KDlzfw" type="4008" source="_dPmbMPI0Ed6814i1KDlzfw" target="_CNqMIPJmEd6814i1KDlzfw"> | ||||
|     <styles xmi:type="notation:ConnectorStyle" xmi:id="_WkRf8fJmEd6814i1KDlzfw"/> | ||||
|     <styles xmi:type="notation:FontStyle" xmi:id="_WkRf8vJmEd6814i1KDlzfw" fontName="Sans"/> | ||||
|     <element xmi:type="uml:InterfaceRealization" href="simulation-2.0.uml#_WkCPYPJmEd6814i1KDlzfw"/> | ||||
|     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_WkRf8_JmEd6814i1KDlzfw" points="[-15, -75, 42, 229]$[-58, -221, -1, 83]"/> | ||||
|   </edges> | ||||
| </notation:Diagram> | ||||
							
								
								
									
										
											BIN
										
									
								
								html/favicon.ico
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								html/favicon.ico
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 9.9 KiB | 
							
								
								
									
										
											BIN
										
									
								
								pix-src/icon/icon-web.ico
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								pix-src/icon/icon-web.ico
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 9.9 KiB | 
| @ -764,20 +764,31 @@ public class FinSetCalc extends RocketComponentCalc { | ||||
| 			double trail = component.toRelative(new Coordinate(component.getLength()),  | ||||
| 					parent)[0].x; | ||||
| 			 | ||||
| 			/* | ||||
| 			 * The counting fails if the fin root chord is very small, in that case assume | ||||
| 			 * no other fin interference than this fin set. | ||||
| 			 */ | ||||
| 			if (trail-lead < 0.007) { | ||||
| 				interferenceFinCount = component.getFinCount(); | ||||
| 			} else { | ||||
| 				interferenceFinCount = 0; | ||||
| 				for (RocketComponent c: parent.getChildren()) { | ||||
| 					if (c instanceof FinSet) { | ||||
| 						double finLead = c.toRelative(Coordinate.NUL, parent)[0].x; | ||||
| 						double finTrail = c.toRelative(new Coordinate(c.getLength()), parent)[0].x; | ||||
| 
 | ||||
| 						// Compute overlap of the fins | ||||
| 
 | ||||
| 						if ((finLead < trail - 0.005) && (finTrail > lead + 0.005)) { | ||||
| 							interferenceFinCount += ((FinSet)c).getFinCount(); | ||||
| 						} | ||||
| 					} | ||||
| 				} | ||||
| 			 | ||||
| 			} | ||||
| 			if (interferenceFinCount < component.getFinCount()) { | ||||
| 				throw new BugException("Counted " + interferenceFinCount + " parallel fins, " + | ||||
| 						"when component itself has " + component.getFinCount()); | ||||
| 						"when component itself has " + component.getFinCount() +  | ||||
| 						", fin points=" + Arrays.toString(component.getFinPoints())); | ||||
| 			} | ||||
| 		} | ||||
| 		return interferenceFinCount; | ||||
|  | ||||
| @ -149,12 +149,18 @@ public class ExceptionHandler implements Thread.UncaughtExceptionHandler { | ||||
| 			return; | ||||
| 		} | ||||
| 		 | ||||
| 		// Create the message | ||||
| 		String msg = e.getClass().getSimpleName() + ": " + e.getMessage(); | ||||
| 		if (msg.length() > 90) { | ||||
| 			msg = msg.substring(0, 80) + "..."; | ||||
| 		} | ||||
| 		 | ||||
| 		// Unknown Error | ||||
| 		if (!(e instanceof Exception)) { | ||||
| 			JOptionPane.showMessageDialog(null,  | ||||
| 					new Object[] {  | ||||
| 						"An unknown Java error occurred:", | ||||
| 						e.getMessage(), | ||||
| 						msg, | ||||
| 						"<html>You should immediately close unnecessary design windows,<br>" + | ||||
| 						"save any unsaved designs and restart OpenRocket!" | ||||
| 					}, "Unknown Java error", JOptionPane.ERROR_MESSAGE); | ||||
| @ -163,12 +169,6 @@ public class ExceptionHandler implements Thread.UncaughtExceptionHandler { | ||||
| 		 | ||||
| 		 | ||||
| 		// Normal exception, show question dialog		 | ||||
| 		String msg = e.getClass().getSimpleName() + ": " + e.getMessage(); | ||||
| 		if (msg.length() > 90) { | ||||
| 			msg = msg.substring(0, 80) + "..."; | ||||
| 		} | ||||
| 		 | ||||
| 		 | ||||
| 		int selection = JOptionPane.showOptionDialog(null, new Object[] { | ||||
| 				"OpenRocket encountered an uncaught exception.  This typically signifies " + | ||||
| 				"a bug in the software.",  | ||||
|  | ||||
| @ -750,34 +750,7 @@ public class SimulationEditDialog extends JDialog { | ||||
| 			return noDataPanel(); | ||||
| 		} | ||||
| 		 | ||||
| 		 | ||||
| 		if (true) | ||||
| 		return new SimulationPlotPanel(simulation); | ||||
| 		 | ||||
| 		JPanel panel = new JPanel(new MigLayout("fill")); | ||||
| 		 | ||||
| 		 | ||||
| 		 | ||||
| 		 | ||||
| 		JButton button = new JButton("test"); | ||||
| 
 | ||||
| 		button.addActionListener(new ActionListener() { | ||||
| 			@Override | ||||
| 			public void actionPerformed(ActionEvent e) { | ||||
| 				PlotConfiguration config = new PlotConfiguration(); | ||||
| 				config.addPlotDataType(FlightDataBranch.TYPE_ALTITUDE); | ||||
| 				config.addPlotDataType(FlightDataBranch.TYPE_VELOCITY_Z); | ||||
| 				config.addPlotDataType(FlightDataBranch.TYPE_ACCELERATION_Z); | ||||
| 				config.addPlotDataType(FlightDataBranch.TYPE_ACCELERATION_TOTAL); | ||||
| 				 | ||||
| 				config.setDomainAxisType(FlightDataBranch.TYPE_TIME); | ||||
| 				 | ||||
| 				performPlot(config); | ||||
| 			} | ||||
| 		}); | ||||
| 		panel.add(button); | ||||
| 		 | ||||
| 		return panel; | ||||
| 	} | ||||
| 	 | ||||
| 	 | ||||
|  | ||||
| @ -323,6 +323,8 @@ public class SimulationPanel extends JPanel { | ||||
| 						if (data==null) | ||||
| 							return null; | ||||
| 						 | ||||
| 						 | ||||
| 						// TODO: CRITICAL: Show getMaxAcceleration if branches not available! | ||||
| 						return UnitGroup.UNITS_ACCELERATION.getDefaultUnit().toStringUnit( | ||||
| 								data.getMaxAcceleration()); | ||||
| 					} | ||||
|  | ||||
| @ -1,7 +1,9 @@ | ||||
| package net.sf.openrocket.rocketcomponent; | ||||
| 
 | ||||
| import java.util.ArrayList; | ||||
| import java.util.Arrays; | ||||
| 
 | ||||
| import net.sf.openrocket.util.BugException; | ||||
| import net.sf.openrocket.util.Coordinate; | ||||
| 
 | ||||
| 
 | ||||
| @ -19,12 +21,8 @@ public class FreeformFinSet extends FinSet { | ||||
| 	} | ||||
| 	 | ||||
| 
 | ||||
| 	public FreeformFinSet(Coordinate[] finpoints) { | ||||
| 		points.clear(); | ||||
| 		for (Coordinate c: finpoints) { | ||||
| 			points.add(c); | ||||
| 		} | ||||
| 		this.length = points.get(points.size()-1).x - points.get(0).x; | ||||
| 	public FreeformFinSet(Coordinate[] finpoints) throws IllegalFinPointException { | ||||
| 		setPoints(finpoints); | ||||
| 	} | ||||
| 
 | ||||
| 	/* | ||||
| @ -73,7 +71,13 @@ public class FreeformFinSet extends FinSet { | ||||
| 			 | ||||
| 			// Create the freeform fin set | ||||
| 			Coordinate[] finpoints = finset.getFinPoints(); | ||||
| 			try { | ||||
| 				freeform = new FreeformFinSet(finpoints); | ||||
| 			} catch (IllegalFinPointException e) { | ||||
| 				throw new BugException("Illegal fin points when converting existing fin to " + | ||||
| 						"freeform fin, fin=" + finset + " points="+Arrays.toString(finpoints), | ||||
| 						e); | ||||
| 			} | ||||
| 
 | ||||
| 			// Copy component attributes | ||||
| 			freeform.copyFrom(finset); | ||||
| @ -134,6 +138,7 @@ public class FreeformFinSet extends FinSet { | ||||
| 		if (index == 0  ||  index == points.size()-1) { | ||||
| 			throw new IllegalFinPointException("cannot remove first or last point"); | ||||
| 		} | ||||
| 		// TODO: CRITICAL: Can result in invalid fin points | ||||
| 		points.remove(index); | ||||
| 		fireComponentChangeEvent(ComponentChangeEvent.BOTH_CHANGE); | ||||
| 	} | ||||
| @ -144,7 +149,7 @@ public class FreeformFinSet extends FinSet { | ||||
| 	} | ||||
| 	 | ||||
| 	public void setPoints(Coordinate[] p) throws IllegalFinPointException { | ||||
| 		if (p[0].x != 0 || p[0].y != 0 || p[p.length-1].y != 0) { | ||||
| 		if (p[0].x != 0 || p[0].y != 0 || p[p.length-1].x < 0 || p[p.length-1].y != 0) { | ||||
| 			throw new IllegalFinPointException("Start or end point illegal."); | ||||
| 		} | ||||
| 		for (int i=0; i < p.length-1; i++) { | ||||
|  | ||||
| @ -5,6 +5,7 @@ import java.util.List; | ||||
| 
 | ||||
| import net.sf.openrocket.aerodynamics.WarningSet; | ||||
| import net.sf.openrocket.util.MathUtil; | ||||
| import net.sf.openrocket.util.Pair; | ||||
| 
 | ||||
| 
 | ||||
| public class FlightData { | ||||
| @ -128,6 +129,9 @@ public class FlightData { | ||||
| 		return maxVelocity; | ||||
| 	} | ||||
| 	 | ||||
| 	/** | ||||
| 	 * NOTE:  This value will also contain any possible acceleration peak when opening a parachute! | ||||
| 	 */ | ||||
| 	public double getMaxAcceleration() { | ||||
| 		return maxAcceleration; | ||||
| 	} | ||||
| @ -161,7 +165,6 @@ public class FlightData { | ||||
| 		FlightDataBranch branch = branches.get(0); | ||||
| 		maxAltitude = branch.getMaximum(FlightDataBranch.TYPE_ALTITUDE); | ||||
| 		maxVelocity = branch.getMaximum(FlightDataBranch.TYPE_VELOCITY_TOTAL); | ||||
| 		maxAcceleration = branch.getMaximum(FlightDataBranch.TYPE_ACCELERATION_TOTAL); | ||||
| 		maxMachNumber = branch.getMaximum(FlightDataBranch.TYPE_MACH_NUMBER); | ||||
| 
 | ||||
| 		flightTime = branch.getLast(FlightDataBranch.TYPE_TIME); | ||||
| @ -177,6 +180,7 @@ public class FlightData { | ||||
| 		 | ||||
| 		if (time == null || altitude == null) { | ||||
| 			timeToApogee = Double.NaN; | ||||
| 			maxAcceleration = Double.NaN; | ||||
| 			return; | ||||
| 		} | ||||
| 		int index = 0; | ||||
| @ -192,6 +196,13 @@ public class FlightData { | ||||
| 			timeToApogee = time.get(index); | ||||
| 		else | ||||
| 			timeToApogee = Double.NaN; | ||||
| 
 | ||||
| 		// Max. acceleration (must be after apogee time) | ||||
| 		if (branch.get(FlightDataBranch.TYPE_ACCELERATION_TOTAL) != null) { | ||||
| 			maxAcceleration = calculateMaxAcceleration(); | ||||
| 		} else { | ||||
| 			maxAcceleration = Double.NaN; | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 
 | ||||
| @ -203,4 +214,41 @@ public class FlightData { | ||||
| 	} | ||||
| 	 | ||||
| 	 | ||||
| 
 | ||||
| 	/** | ||||
| 	 * Find the maximum acceleration before apogee. | ||||
| 	 */ | ||||
| 	private double calculateMaxAcceleration() { | ||||
| 		 | ||||
| 		// End check at first recovery device deployment | ||||
| 		double endTime = Double.MAX_VALUE; | ||||
| 		FlightDataBranch branch = this.getBranch(0); | ||||
| 		for (Pair<Double, FlightEvent> event: branch.getEvents()) { | ||||
| 			if (event.getV().getType() == FlightEvent.Type.RECOVERY_DEVICE_DEPLOYMENT) { | ||||
| 				if (event.getV().getTime() < endTime) { | ||||
| 					endTime = event.getV().getTime(); | ||||
| 				} | ||||
| 			} | ||||
| 		} | ||||
| 		 | ||||
| 		List<Double> time = branch.get(FlightDataBranch.TYPE_TIME); | ||||
| 		List<Double> acceleration = branch.get(FlightDataBranch.TYPE_ACCELERATION_TOTAL); | ||||
| 		 | ||||
| 		if (time == null || acceleration == null) { | ||||
| 			return Double.NaN; | ||||
| 		} | ||||
| 		 | ||||
| 		double max = 0; | ||||
| 		 | ||||
| 		for (int i=0; i<time.size(); i++) { | ||||
| 			if (time.get(i) >= endTime) { | ||||
| 				break; | ||||
| 			} | ||||
| 			double a = acceleration.get(i); | ||||
| 			if (a > max) | ||||
| 				max = a; | ||||
| 		} | ||||
| 
 | ||||
| 		return max; | ||||
| 	} | ||||
| } | ||||
|  | ||||
| @ -426,4 +426,8 @@ public class FlightDataBranch { | ||||
| 	public boolean isMutable() { | ||||
| 		return mutable; | ||||
| 	} | ||||
| 	 | ||||
| 	 | ||||
| 
 | ||||
| 	 | ||||
| } | ||||
|  | ||||
| @ -71,7 +71,7 @@ public class ComponentCompareTest { | ||||
| 	 | ||||
| 	 | ||||
| 	@Test | ||||
| 	public void testComponentSimilarity() { | ||||
| 	public void testComponentSimilarity() throws IllegalFinPointException { | ||||
| 		FinSet trap = new TrapezoidFinSet( | ||||
| 				5,   // fins | ||||
| 				5.0, // root | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user