Beispiel #1
0
		public PolygonMesh.Mesh CsgToMeshRecursive(CsgObject objectToProcess)
		{
			throw new Exception("You must wirte the specialized function for this type.");
		}
Beispiel #2
0
		/// <summary>
		/// Normaly ObjectCSG tree can be dirrected acyclic graphs and have instances appear more than once in the tree.
		/// This function will ensure that that every Object is a unique instance in the structure.
		/// </summary>
		/// <param name="dagRoot"></param>
		/// <returns>A new ObjectCSG root that is a new tree of all the objects in the original tree.</returns>
		public static CsgObject Flatten(CsgObject dagRoot)
		{
			CopyAndFlatten flattener = new CopyAndFlatten();
			return flattener.DoCopyAndFlatten((dynamic)dagRoot);
		}
		public IPrimitive GetIPrimitiveRecursive(CsgObject objectToProcess)
		{
			throw new Exception("You must wirte the specialized function for this type.");
		}
Beispiel #4
0
		public static PolygonMesh.Mesh Convert(CsgObject objectToProcess)
		{
			CsgToMesh visitor = new CsgToMesh();
			return visitor.CsgToMeshRecursive((dynamic)objectToProcess);
		}
		protected string AddNameAsComment(CsgObject objectToProcess)
		{
			if (objectToProcess.Name != "")
			{
				return " // " + objectToProcess.Name;
			}

			return "";
		}
 void runMatterScript_Click(object sender, MouseEventArgs mouseEvent)
 {
     CsgObject testObject = ParseScript();
     if (testObject != null)
     {
         objectToRender = testObject;
     }
 }
Beispiel #7
0
 public void RenderToGlRecursive(CsgObject objectToProcess)
 {
     throw new Exception("You must wirte the specialized function for this type.");
 }
Beispiel #8
0
 public static void Render(CsgObject objectToProcess)
 {
     RenderCsgToGl visitor = new RenderCsgToGl();
     visitor.RenderToGlRecursive((dynamic)objectToProcess);
 }
        /// <summary>
        /// Normaly ObjectCSG tree can be dirrected acyclic graphs and have instances appear more than once in the tree.
        /// This function will ensure that that every Object is a unique instance in the structure.
        /// </summary>
        /// <param name="dagRoot"></param>
        /// <returns>A new ObjectCSG root that is a new tree of all the objects in the original tree.</returns>
        public static CsgObject Flatten(CsgObject dagRoot)
        {
            CopyAndFlatten flattener = new CopyAndFlatten();

            return(flattener.DoCopyAndFlatten((dynamic)dagRoot));
        }