/// <summary> /// Elements the export. /// </summary> private bool ElementExport(Element elem) { if (!m_ExportHandle.OnElementStart(elem)) { return(false); } var transform = default(Transform); if (elem is Instance) { transform = (elem as Instance).GetTransform(); } var objects = this.GetGeometryObject(elem); if (objects.Count == 0) { return(false); } while (objects.Count > 0) { var obj = objects.Pop(); var node = new GeometryObjectNode(obj); if (!m_ExportHandle.OnGeometryObjectStart(node)) { return(false); } if (obj.GetType().Equals(typeof(Solid))) { var solid = obj as Solid; var faces = solid.Faces; var eum = faces.GetEnumerator(); while (eum.MoveNext()) { var face = (Face)eum.Current; // not handle.... m_ExportHandle.OnMaterial(face.MaterialElementId); var polygonMeshNode = this.FaceConvert(face, transform); m_ExportHandle.OnPolygonMesh(polygonMeshNode); } } m_ExportHandle.OnGeometryObjectEnd(node); } m_ExportHandle.OnElementEnd(elem); return(true); }
void IExportElement.OnGeometryObjectEnd(GeometryObjectNode solid) { }
bool IExportElement.OnGeometryObjectStart(GeometryObjectNode solid) { return(true); }