Annex E
(informative)
Examples
E.11.2 - Curve Parameters In Radians
Example overview
This example illustrates extruded solids based on trimmed arcs using radians. The resulting solid is identical to the corresponding example in degrees.
IFC-SPF source
ISO-10303-21; HEADER; FILE_DESCRIPTION(('ViewDefinition [DesignTransferView_V1]'),'2;1'); FILE_NAME( /* name */ 'curve-parameters-in-radians.ifc', /* time_stamp */ '2017-06-28T23:09:53', /* author */ ('redacted'), /* organization */ ('redacted'), /* preprocessor_version */ 'redacted', /* originating_system */ 'redacted', /* authorization */ 'None'); FILE_SCHEMA (('IFC4X3_DEV_738df036')); ENDSEC; DATA; #10= IFCCARTESIANPOINT((0.0,0.0,0.0)); #11= IFCAXIS2PLACEMENT3D(#10,$,$); #12= IFCLOCALPLACEMENT($,#11); /* defines the default building (as required as the minimum spatial element) */ /* These profile curves are intentionally expressed in a more complicated manner than necessary to test parameterization */ #13= IFCBUILDING('39t4Pu3nTC4ekXYRIHJB9W',$,'IfcBuilding',$,$,#12,$,$,$,$,$,#18); #14= IFCRELCONTAINEDINSPATIALSTRUCTURE('3Sa3dTJGn0H8TQIGiuGQd5',$,'Building','Building Container for Elements',(#77,#131,#180),#13); #15= IFCCARTESIANPOINT((0.0,0.0,0.0)); #16= IFCAXIS2PLACEMENT3D(#15,$,$); #18= IFCPOSTALADDRESS($,$,$,$,('Unknown'),$,'Unknown',$,'Unknown','Unknown'); /* general entities required for all IFC data sets, defining the context for the exchange */ #20= IFCPROJECT('0$WU4A9R19$vKWO$AdOnKA',$,'IfcProject',$,$,$,$,(#28),#21); #21= IFCUNITASSIGNMENT((#22,#23,#24,#25,#26)); #22= IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.); #23= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.); #24= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.); #25= IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.); #26= IFCSIUNIT(*,.TIMEUNIT.,$,.SECOND.); #27= IFCRELAGGREGATES('091a6ewbvCMQ2Vyiqspa7a',$,'Project Container','Project Container for Buildings',#20,(#13)); #28= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,0.0001,#30,#31); #29= IFCCARTESIANPOINT((0.0,0.0,0.0)); #30= IFCAXIS2PLACEMENT3D(#29,$,$); #31= IFCDIRECTION((0.0,1.0)); #32= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Body','Model',*,*,*,*,#28,$,.MODEL_VIEW.,$); /* Example data for CurveParametersRadians */ #50= IFCMATERIAL('Steel',$,$); #52= IFCCARTESIANPOINT((-1000.0,1000.0)); #53= IFCDIRECTION((0.70710678,-0.70710678)); #54= IFCVECTOR(#53,1414.2135623731); #55= IFCLINE(#52,#54); #56= IFCTRIMMEDCURVE(#55,(IFCPARAMETERVALUE(0.292893218813453)),(IFCPARAMETERVALUE(1.70710678118655)),.T.,.PARAMETER.); #57= IFCCOMPOSITECURVESEGMENT(.CONTINUOUS.,.T.,#56); #58= IFCCARTESIANPOINT((0.0,0.0)); #59= IFCAXIS2PLACEMENT2D(#58,$); #60= IFCCIRCLE(#59,1000.0); #61= IFCTRIMMEDCURVE(#60,(IFCPARAMETERVALUE(5.49778714378214)),(IFCPARAMETERVALUE(2.35619449019234)),.T.,.PARAMETER.); #62= IFCCOMPOSITECURVESEGMENT(.CONTINUOUS.,.T.,#61); #63= IFCCOMPOSITECURVE((#57,#62),.U.); #64= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'SemiCircle',#63); #65= IFCMATERIALPROFILE('SemiCircle',$,#50,#64,$,$); #67= IFCMATERIALPROFILESET('SemiCircle',$,(#65),$); #68= IFCRELASSOCIATESMATERIAL('1gdVo5TjPETPZlW8HSRupM',$,'MatAssoc','Material Associates',(#69),#67); #69= IFCCOLUMNTYPE('24mq0gwVr7bgEMXPmo$TrF',$,'SemiCircle',$,$,$,$,$,$,.COLUMN.); #70= IFCRELDEFINESBYTYPE('0devdSRyf3uBEQbSqWTDjo',$,'NameNotAssigned',$,(#77),#69); #71= IFCRELDECLARES('1Cjr05W9T0fx0M3_mdVqMd',$,$,$,#20,(#69,#124,#173)); #72= IFCMATERIALPROFILESETUSAGE(#67,5,$); #73= IFCRELASSOCIATESMATERIAL('35z8gDFbb6gvrCOz$24tUJ',$,'MatAssoc','Material Associates',(#77),#72); #74= IFCCARTESIANPOINT((0.0,0.0,0.0)); #75= IFCAXIS2PLACEMENT3D(#74,$,$); #76= IFCLOCALPLACEMENT(#12,#75); #77= IFCCOLUMN('0RGc8lepr7BRF_EtHrWJ45',$,'SemiCircle',$,$,#76,#85,$,$); #78= IFCCARTESIANPOINT((0.0,0.0,2000.0)); #79= IFCPOLYLINE((#15,#78)); #80= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#28,$,.MODEL_VIEW.,$); #81= IFCSHAPEREPRESENTATION(#80,'Axis','Curve3D',(#79)); #82= IFCEXTRUDEDAREASOLID(#64,$,#83,2000.0); #83= IFCDIRECTION((0.0,0.0,1.0)); #84= IFCSHAPEREPRESENTATION(#32,'Body','SweptSolid',(#82)); #85= IFCPRODUCTDEFINITIONSHAPE($,$,(#81,#84)); #100= IFCCARTESIANPOINT((0.0,1000.0)); #101= IFCAXIS2PLACEMENT2D(#100,#102); #102= IFCDIRECTION((-1.0,0.0)); #103= IFCCIRCLE(#101,1732.05081); #104= IFCTRIMMEDCURVE(#103,(IFCPARAMETERVALUE(1.0471975511966)),(IFCPARAMETERVALUE(2.0943951023932)),.T.,.PARAMETER.); #105= IFCCOMPOSITECURVESEGMENT(.CONTINUOUS.,.T.,#104); #106= IFCCARTESIANPOINT((-866.0254,-500.0)); #107= IFCAXIS2PLACEMENT2D(#106,#108); #108= IFCDIRECTION((0.0,-1.0)); #109= IFCCIRCLE(#107,1732.05081); #110= IFCTRIMMEDCURVE(#109,(IFCPARAMETERVALUE(1.5707963267949)),(IFCPARAMETERVALUE(2.61799387799149)),.T.,.PARAMETER.); #111= IFCCOMPOSITECURVESEGMENT(.CONTINUOUS.,.T.,#110); #112= IFCCARTESIANPOINT((866.0254,-500.0)); #113= IFCAXIS2PLACEMENT2D(#112,#114); #114= IFCDIRECTION((0.0,1.0)); #115= IFCCIRCLE(#113,1732.05081); #116= IFCTRIMMEDCURVE(#115,(IFCPARAMETERVALUE(0.523598775598299)),(IFCPARAMETERVALUE(1.5707963267949)),.T.,.PARAMETER.); #117= IFCCOMPOSITECURVESEGMENT(.CONTINUOUS.,.T.,#116); #118= IFCCOMPOSITECURVE((#105,#111,#117),.U.); #119= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'CurviLinearTriangle',#118); #120= IFCMATERIALPROFILE('CurviLinearTriangle',$,#50,#119,$,$); #122= IFCMATERIALPROFILESET('CurviLinearTriangle',$,(#120),$); #123= IFCRELASSOCIATESMATERIAL('1M5oofzjD3IOM43brXW6wT',$,'MatAssoc','Material Associates',(#124),#122); #124= IFCCOLUMNTYPE('3N_qc_BjX1hvEgwfRvVcb_',$,'CurviLinearTriangle',$,$,$,$,$,$,.COLUMN.); #125= IFCRELDEFINESBYTYPE('3tGocD1N51oOvSvHbJI_qD',$,'NameNotAssigned',$,(#131),#124); #126= IFCMATERIALPROFILESETUSAGE(#122,5,$); #127= IFCRELASSOCIATESMATERIAL('0gnTzVmkbE9hPsJDxOUOL3',$,'MatAssoc','Material Associates',(#131),#126); #128= IFCCARTESIANPOINT((2500.0,0.0,0.0)); #129= IFCAXIS2PLACEMENT3D(#128,$,$); #130= IFCLOCALPLACEMENT(#12,#129); #131= IFCCOLUMN('0bmIILAwj8$PLHK1jcmad0',$,'CurviLinearTriangle',$,$,#130,#137,$,$); #132= IFCCARTESIANPOINT((0.0,0.0,2000.0)); #133= IFCPOLYLINE((#15,#132)); #134= IFCSHAPEREPRESENTATION(#80,'Axis','Curve3D',(#133)); #135= IFCEXTRUDEDAREASOLID(#119,$,#83,2000.0); #136= IFCSHAPEREPRESENTATION(#32,'Body','SweptSolid',(#135)); #137= IFCPRODUCTDEFINITIONSHAPE($,$,(#134,#136)); #150= IFCCARTESIANPOINT((0.0,0.0)); #151= IFCAXIS2PLACEMENT2D(#150,$); #152= IFCELLIPSE(#151,1000.0,500.0); #153= IFCTRIMMEDCURVE(#152,(IFCPARAMETERVALUE(0.0)),(IFCPARAMETERVALUE(0.785398163397448)),.T.,.PARAMETER.); #154= IFCCOMPOSITECURVESEGMENT(.CONTINUOUS.,.T.,#153); #155= IFCCARTESIANPOINT((0.0,0.0)); #156= IFCDIRECTION((0.89442719,0.4472136)); #157= IFCVECTOR(#156,1.0); #158= IFCLINE(#155,#157); #159= IFCTRIMMEDCURVE(#158,(IFCPARAMETERVALUE(0.0)),(IFCPARAMETERVALUE(790.569415042095)),.F.,.PARAMETER.); #160= IFCCOMPOSITECURVESEGMENT(.CONTINUOUS.,.T.,#159); #161= IFCCARTESIANPOINT((0.0,0.0)); #162= IFCDIRECTION((1.0,0.0)); #163= IFCVECTOR(#162,1.0); #164= IFCLINE(#161,#163); #165= IFCTRIMMEDCURVE(#164,(IFCPARAMETERVALUE(0.0)),(IFCPARAMETERVALUE(1000.0)),.T.,.PARAMETER.); #166= IFCCOMPOSITECURVESEGMENT(.CONTINUOUS.,.T.,#165); #167= IFCCOMPOSITECURVE((#154,#160,#166),.U.); #168= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'PartialEllipse',#167); #169= IFCMATERIALPROFILE('PartialEllipse',$,#50,#168,$,$); #171= IFCMATERIALPROFILESET('PartialEllipse',$,(#169),$); #172= IFCRELASSOCIATESMATERIAL('2OfhB1Dcz2cAdV$CDh9PHV',$,'MatAssoc','Material Associates',(#173),#171); #173= IFCCOLUMNTYPE('0dtemVu1P2682BcO3CPWAy',$,'PartialEllipse',$,$,$,$,$,$,.COLUMN.); #174= IFCRELDEFINESBYTYPE('0rNx6sqCH2mOt1cWOT6zSU',$,'NameNotAssigned',$,(#180),#173); #175= IFCMATERIALPROFILESETUSAGE(#171,5,$); #176= IFCRELASSOCIATESMATERIAL('3bTNkVsf9099xrALHA6WhF',$,'MatAssoc','Material Associates',(#180),#175); #177= IFCCARTESIANPOINT((5000.0,0.0,0.0)); #178= IFCAXIS2PLACEMENT3D(#177,$,$); #179= IFCLOCALPLACEMENT(#12,#178); #180= IFCCOLUMN('1JCvykjKH71R7_uck4n6hN',$,'PartialEllipse',$,$,#179,#186,$,$); #181= IFCCARTESIANPOINT((0.0,0.0,2000.0)); #182= IFCPOLYLINE((#15,#181)); #183= IFCSHAPEREPRESENTATION(#80,'Axis','Curve3D',(#182)); #184= IFCEXTRUDEDAREASOLID(#168,$,#83,2000.0); #185= IFCSHAPEREPRESENTATION(#32,'Body','SweptSolid',(#184)); #186= IFCPRODUCTDEFINITIONSHAPE($,$,(#183,#185)); ENDSEC; END-ISO-10303-21;