GSMLawDoc isa CATPart { myPart isa Part { OBody isa OpenBodyFeature { P1 isa GSMPoint { PointType = 0; TypeObject isa GSMPointCoord { X = 50mm; Y = 100mm; Z = 150mm; } } P2 isa GSMPoint { PointType = 0; TypeObject isa GSMPointCoord { X = 50mm; Y = 0mm; Z = 150mm; } } P3 isa GSMPoint { PointType = 0; TypeObject isa GSMPointCoord { X = 0mm; Y = 0mm; Z = 150mm; } } DefCurve isa GSMCurve { Elements[1] = object : ..\P1; Elements[2] = object : ..\P2; Elements[3] = object : ..\P3; } RefLine isa GSMLine { LineType = 0; TypeObject isa GSMLinePtPt { FirstPoint = object : ..\..\P1; SecondPoint = object : ..\..\P3; } } Law isa GSMLawDistProj { Reference = object: ..\RefLine; Definition = object: ..\DefCurve; } } } }