← Back to team overview

kicad-developers team mailing list archive

Re: Plugin plans (post-stable release)

 

On 16.06.2015 03:20, Cirilo Bernardo wrote:
> 
> Tom, have you got a small example of an assembly created by OCC?
> I would like to see how SolidWorks imports the file and if the results
> will be acceptable.

Hi Cirilo.

In the attachment. I don't have solidworks but Inventor and a IDA-STEP
(free STEP viewer) make sense of it... The code is on my Github [1].

Best,
Tom

[1] https://github.com/twlostow/step2wrl/tree/master/export-test

ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('Open CASCADE Model'),'2;1');
FILE_NAME('Open CASCADE Shape Model','2015-06-16T18:30:09',('Author'),(
    'Open CASCADE'),'Open CASCADE STEP processor 6.7','Open CASCADE 6.7'
  ,'Unknown');
FILE_SCHEMA(('AUTOMOTIVE_DESIGN { 1 0 10303 214 1 1 1 1 }'));
ENDSEC;
DATA;
#1 = APPLICATION_PROTOCOL_DEFINITION('international standard',
  'automotive_design',2000,#2);
#2 = APPLICATION_CONTEXT(
  'core data for automotive mechanical design processes');
#3 = SHAPE_DEFINITION_REPRESENTATION(#4,#10);
#4 = PRODUCT_DEFINITION_SHAPE('','',#5);
#5 = PRODUCT_DEFINITION('design','',#6,#9);
#6 = PRODUCT_DEFINITION_FORMATION('','',#7);
#7 = PRODUCT('Kicad-PCB','Kicad-PCB','',(#8));
#8 = PRODUCT_CONTEXT('',#2,'mechanical');
#9 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
#10 = SHAPE_REPRESENTATION('',(#11,#15,#19,#23,#27,#31,#35),#39);
#11 = AXIS2_PLACEMENT_3D('',#12,#13,#14);
#12 = CARTESIAN_POINT('',(0.,0.,0.));
#13 = DIRECTION('',(0.,0.,1.));
#14 = DIRECTION('',(1.,0.,-0.));
#15 = AXIS2_PLACEMENT_3D('',#16,#17,#18);
#16 = CARTESIAN_POINT('',(0.,0.,0.));
#17 = DIRECTION('',(0.,0.,1.));
#18 = DIRECTION('',(1.,0.,-0.));
#19 = AXIS2_PLACEMENT_3D('',#20,#21,#22);
#20 = CARTESIAN_POINT('',(0.,0.,0.));
#21 = DIRECTION('',(0.,0.,1.));
#22 = DIRECTION('',(1.,0.,-0.));
#23 = AXIS2_PLACEMENT_3D('',#24,#25,#26);
#24 = CARTESIAN_POINT('',(0.,0.,0.));
#25 = DIRECTION('',(0.,0.,1.));
#26 = DIRECTION('',(1.,0.,-0.));
#27 = AXIS2_PLACEMENT_3D('',#28,#29,#30);
#28 = CARTESIAN_POINT('',(0.,0.,0.));
#29 = DIRECTION('',(0.,0.,1.));
#30 = DIRECTION('',(1.,0.,-0.));
#31 = AXIS2_PLACEMENT_3D('',#32,#33,#34);
#32 = CARTESIAN_POINT('',(0.,0.,0.));
#33 = DIRECTION('',(0.,0.,1.));
#34 = DIRECTION('',(1.,0.,-0.));
#35 = AXIS2_PLACEMENT_3D('',#36,#37,#38);
#36 = CARTESIAN_POINT('',(0.,0.,0.));
#37 = DIRECTION('',(0.,0.,1.));
#38 = DIRECTION('',(1.,0.,-0.));
#39 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) 
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#43)) GLOBAL_UNIT_ASSIGNED_CONTEXT(
(#40,#41,#42)) REPRESENTATION_CONTEXT('Context #1',
  '3D Context with UNIT and UNCERTAINTY') );
#40 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
#41 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
#42 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
#43 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#40,
  'distance_accuracy_value','confusion accuracy');
#44 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#7));
#45 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#46),#8734);
#46 = MANIFOLD_SOLID_BREP('',#47);
#47 = CLOSED_SHELL('',(#48,#168,#244,#320,#3520,#6270,#6297,#6304,#6331,
    #6358,#6385,#6412,#6439,#6466,#6493,#6520,#6547,#6574,#6601,#6628,
    #6655,#6682,#6709,#6736,#6763,#6790,#6817,#6844,#6871,#6898,#6925,
    #6952,#6979,#7006,#7033,#7060,#7087,#7114,#7141,#7168,#7195,#7222,
    #7249,#7276,#7303,#7330,#7357,#7384,#7411,#7438,#7465,#7492,#7519,
    #7546,#7573,#7600,#7627,#7654,#7681,#7708,#7735,#7762,#7789,#7816,
    #7843,#7870,#7897,#7924,#7951,#7978,#8005,#8032,#8059,#8086,#8113,
    #8140,#8167,#8194,#8221,#8248,#8275,#8302,#8329,#8356,#8383,#8410,
    #8437,#8464,#8491,#8518,#8545,#8572,#8599,#8626,#8653,#8680,#8707));
#48 = ADVANCED_FACE('',(#49),#63,.F.);
#49 = FACE_BOUND('',#50,.F.);
#50 = EDGE_LOOP('',(#51,#86,#114,#142));
#51 = ORIENTED_EDGE('',*,*,#52,.T.);
#52 = EDGE_CURVE('',#53,#55,#57,.T.);
#53 = VERTEX_POINT('',#54);
#54 = CARTESIAN_POINT('',(0.,0.,0.));
#55 = VERTEX_POINT('',#56);
#56 = CARTESIAN_POINT('',(0.,0.,5.));
#57 = SURFACE_CURVE('',#58,(#62,#74),.PCURVE_S1.);
#58 = LINE('',#59,#60);
#59 = CARTESIAN_POINT('',(0.,0.,0.));
#60 = VECTOR('',#61,1.);
#61 = DIRECTION('',(0.,0.,1.));
#62 = PCURVE('',#63,#68);
#63 = PLANE('',#64);
#64 = AXIS2_PLACEMENT_3D('',#65,#66,#67);
#65 = CARTESIAN_POINT('',(0.,0.,0.));
#66 = DIRECTION('',(0.,1.,0.));
#67 = DIRECTION('',(1.,0.,0.));
#68 = DEFINITIONAL_REPRESENTATION('',(#69),#73);
#69 = LINE('',#70,#71);
#70 = CARTESIAN_POINT('',(0.,0.));
#71 = VECTOR('',#72,1.);
#72 = DIRECTION('',(0.,-1.));
#73 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
  ) );
#74 = PCURVE('',#75,#80);
#75 = PLANE('',#76);
#76 = AXIS2_PLACEMENT_3D('',#77,#78,#79);
#77 = CARTESIAN_POINT('',(0.,100.,0.));
#78 = DIRECTION('',(1.,0.,-0.));
#79 = DIRECTION('',(0.,-1.,0.));
#80 = DEFINITIONAL_REPRESENTATION('',(#81),#85);
#81 = LINE('',#82,#83);
#82 = CARTESIAN_POINT('',(100.,0.));
#83 = VECTOR('',#84,1.);
#84 = DIRECTION('',(0.,-1.));
#85 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
  ) );
#86 = ORIENTED_EDGE('',*,*,#87,.T.);
#87 = EDGE_CURVE('',#55,#88,#90,.T.);
#88 = VERTEX_POINT('',#89);
#89 = CARTESIAN_POINT('',(100.,0.,5.));
#90 = SURFACE_CURVE('',#91,(#95,#102),.PCURVE_S1.);
#91 = LINE('',#92,#93);
#92 = CARTESIAN_POINT('',(0.,0.,5.));
#93 = VECTOR('',#94,1.);
#94 = DIRECTION('',(1.,0.,0.));
#95 = PCURVE('',#63,#96);
#96 = DEFINITIONAL_REPRESENTATION('',(#97),#101);
#97 = LINE('',#98,#99);
#98 = CARTESIAN_POINT('',(0.,-5.));
#99 = VECTOR('',#100,1.);
#100 = DIRECTION('',(1.,0.));
#101 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
  ) );
#102 = PCURVE('',#103,#108);
#103 = PLANE('',#104);
#104 = AXIS2_PLACEMENT_3D('',#105,#106,#107);
#105 = CARTESIAN_POINT('',(0.,0.,5.));
#106 = DIRECTION('',(0.,0.,-1.));
#107 = DIRECTION('',(-1.,0.,-0.));
#108 = DEFINITIONAL_REPRESENTATION('',(#109),#113);
#109 = LINE('',#110,#111);
#110 = CARTESIAN_POINT('',(0.,0.));
#111 = VECTOR('',#112,1.);
#112 = DIRECTION('',(-1.,0.));
#113 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
  ) );
#114 = ORIENTED_EDGE('',*,*,#115,.F.);
#115 = EDGE_CURVE('',#116,#88,#118,.T.);
#116 = VERTEX_POINT('',#117);
#117 = CARTESIAN_POINT('',(100.,0.,0.));
#118 = SURFACE_CURVE('',#119,(#123,#130),.PCURVE_S1.);
#119 = LINE('',#120,#121);
#120 = CARTESIAN_POINT('',(100.,0.,0.));
#121 = VECTOR('',#122,1.);
#122 = DIRECTION('',(0.,0.,1.));
#123 = PCURVE('',#63,#124);
#124 = DEFINITIONAL_REPRESENTATION('',(#125),#129);
#125 = LINE('',#126,#127);
#126 = CARTESIAN_POINT('',(100.,0.));
#127 = VECTOR('',#128,1.);
#128 = DIRECTION('',(0.,-1.));
#129 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
  ) );
#130 = PCURVE('',#131,#136);
#131 = PLANE('',#132);
#132 = AXIS2_PLACEMENT_3D('',#133,#134,#135);
#133 = CARTESIAN_POINT('',(100.,0.,0.));
#134 = DIRECTION('',(-1.,0.,0.));
#135 = DIRECTION('',(0.,1.,0.));
#136 = DEFINITIONAL_REPRESENTATION('',(#137),#141);
#137 = LINE('',#138,#139);
#138 = CARTESIAN_POINT('',(0.,0.));
#139 = VECTOR('',#140,1.);
#140 = DIRECTION('',(0.,-1.));
#141 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
  ) );
#142 = ORIENTED_EDGE('',*,*,#143,.F.);
#143 = EDGE_CURVE('',#53,#116,#144,.T.);
#144 = SURFACE_CURVE('',#145,(#149,#156),.PCURVE_S1.);
#145 = LINE('',#146,#147);
#146 = CARTESIAN_POINT('',(0.,0.,0.));
#147 = VECTOR('',#148,1.);
#148 = DIRECTION('',(1.,0.,0.));
#149 = PCURVE('',#63,#150);
#150 = DEFINITIONAL_REPRESENTATION('',(#151),#155);
#151 = LINE('',#152,#153);
#152 = CARTESIAN_POINT('',(0.,0.));
#153 = VECTOR('',#154,���q�^u���b�

References