File Format FCStd

From FreeCAD Documentation
Revision as of 14:59, 4 February 2010 by Wmayer (talk | contribs) (Created page with 'A FreeCAD project is actually a normal zip file that always contains a Document.xml file and optionally several data files, a GuiDocument.xml and a thumbnail in PNG format. ==St…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

A FreeCAD project is actually a normal zip file that always contains a Document.xml file and optionally several data files, a GuiDocument.xml and a thumbnail in PNG format.

Structure of Document.xml

<?xml version='1.0' encoding='utf-8'?>
<Document SchemaVersion="4">
   <Properties Count="9">
      <Property name="Comment" type="App::PropertyString">
         <String value=""/>
      </Property>
      <Property name="Company" type="App::PropertyString">
         <String value=""/>
      </Property>
      <Property name="CreatedBy" type="App::PropertyString">
         <String value=""/>
      </Property>
      <Property name="CreationDate" type="App::PropertyString">
         <String value="Fri Jan 29 15:14:38 2010 "/>
      </Property>
      <Property name="FileName" type="App::PropertyString">
         <String value="/tmp/test.FCStd"/>
      </Property>
      <Property name="Id" type="App::PropertyString">
         <String value="201b746f-a1ed-4297-bf3d-65d5ec11abe0"/>
      </Property>
      <Property name="Label" type="App::PropertyString">
         <String value="names"/>
      </Property>
      <Property name="LastModifiedBy" type="App::PropertyString">
         <String value=""/>
      </Property>
      <Property name="LastModifiedDate" type="App::PropertyString">
         <String value="Fri Jan 29 15:15:21 2010 "/>
      </Property>
   </Properties>
   <Objects Count="2">
      <Object type="Mesh::Cube" name="Cube" />
      <Object type="Part::Box" name="Box" />
   </Objects>
   <ObjectData Count="2">
      <Object name="Cube">
         <Properties Count="7">
            <Property name="Height" type="App::PropertyFloatConstraint">
               <Float value="10"/>
            </Property>
            <Property name="Label" type="App::PropertyString">
               <String value="Cube"/>
            </Property>
            <Property name="Length" type="App::PropertyFloatConstraint">
               <Float value="10"/>
            </Property>
            <Property name="Mesh" type="Mesh::PropertyMeshKernel">
               <Mesh file="MeshKernel.bms"/>
            </Property>
            <Property name="Placement" type="App::PropertyPlacement">
               <PropertyPlacement Px="0" Py="0" Pz="0" Q0="0" Q1="0" Q2="0" Q3="1"/>
            </Property>
            <Property name="Pos" type="App::PropertyPlacementLink">
               <Link value=""/>
            </Property>
            <Property name="Width" type="App::PropertyFloatConstraint">
               <Float value="10"/>
            </Property>
         </Properties>
      </Object>
      <Object name="Box">
         <Properties Count="7">
            <Property name="Height" type="App::PropertyLength">
               <Float value="10"/>
            </Property>
            <Property name="Label" type="App::PropertyString">
               <String value="Box2"/>
            </Property>
            <Property name="Length" type="App::PropertyLength">
               <Float value="10"/>
            </Property>
            <Property name="Placement" type="App::PropertyPlacement">
               <PropertyPlacement Px="0" Py="0" Pz="0" Q0="0" Q1="0" Q2="0" Q3="1"/>
            </Property>
            <Property name="Pos" type="App::PropertyPlacementLink">
               <Link value=""/>
            </Property>
            <Property name="Shape" type="Part::PropertyPartShape">
               <Part file="PartShape.brp2"/>
            </Property>
            <Property name="Width" type="App::PropertyLength">
               <Float value="10"/>
            </Property>
         </Properties>
      </Object>
   </ObjectData>
</Document>