本文整理汇总了C++中step::RefPtr::createIfcAxis2Placement2D方法的典型用法代码示例。如果您正苦于以下问题:C++ RefPtr::createIfcAxis2Placement2D方法的具体用法?C++ RefPtr::createIfcAxis2Placement2D怎么用?C++ RefPtr::createIfcAxis2Placement2D使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类step::RefPtr
的用法示例。
在下文中一共展示了RefPtr::createIfcAxis2Placement2D方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int n, char **p)
{
Step::RefPtr<ifc2x3::ExpressDataSet> eds ;
try
{
std::cout << "Creating ExpressDataSet" << std::endl;
eds = new ifc2x3::ExpressDataSet;
}
catch (const std::exception& e)
{
TEST_FAILURE((std::string("Exception : ") + e.what()).c_str());
}
TEST_VALIDITY(eds);
///////////////////////////////////////////////////////////////////////////////////////////
LOG_DEBUG("Test with a IfcBoundedCurve" << std::endl);
Step::RefPtr<ifc2x3::IfcBSplineCurve> BSpline = eds->createIfcBezierCurve();
TEST_VALIDITY(BSpline);
TEST_ASSERT(BSpline->getDim()==0);
ifc2x3::Array_IfcCartesianPoint_0_255 ControlPoint = BSpline->getControlPoints();
Step::Integer IndexOnControlPoints = BSpline->getUpperIndexOnControlPoints();
TEST_ASSERT(ControlPoint.size()==256);
TEST_ASSERT(IndexOnControlPoints==0);
ifc2x3::List_IfcLengthMeasure_1_3 Coordinates1;
Coordinates1.push_back(1);
Coordinates1.push_back(1);
Coordinates1.push_back(0);
Step::RefPtr< ifc2x3::IfcCartesianPoint > Point1 = eds->createIfcCartesianPoint();
Point1->setCoordinates(Coordinates1);
ifc2x3::List_IfcCartesianPoint_2_n ListOfIfcCartesianPoint;
ListOfIfcCartesianPoint.push_back(Point1);
BSpline->setControlPointsList(ListOfIfcCartesianPoint);
LOG_DEBUG("BSpline->getDim() = " << BSpline->getDim() << std::endl);
TEST_ASSERT(BSpline->getDim()==3);
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
LOG_DEBUG("Test with a IfcConic" << std::endl);
Step::RefPtr<ifc2x3::IfcConic> Circle = eds->createIfcCircle();
TEST_VALIDITY(Circle);
TEST_ASSERT(Circle->getDim()==0);
ifc2x3::List_IfcLengthMeasure_1_3 CoordinatesAxis22D;
CoordinatesAxis22D.push_back(0);
CoordinatesAxis22D.push_back(0);
Step::RefPtr< ifc2x3::IfcCartesianPoint > Location1 = eds->createIfcCartesianPoint();
Location1->setCoordinates(CoordinatesAxis22D);
Step::RefPtr<ifc2x3::IfcDirection> RefDirection1 = eds->createIfcDirection();
RefDirection1->getDirectionRatios().push_back(1.0);
RefDirection1->getDirectionRatios().push_back(1.0);
Step::RefPtr< ifc2x3::IfcAxis2Placement > Axis2Placement1 = new ifc2x3::IfcAxis2Placement();
Step::RefPtr< ifc2x3::IfcAxis2Placement2D > Axis2Placement2D1 = eds->createIfcAxis2Placement2D();
Axis2Placement2D1->setLocation(Location1);
Axis2Placement2D1->setRefDirection(RefDirection1);
Axis2Placement1->setIfcAxis2Placement2D(Axis2Placement2D1.get());
Circle->setPosition(Axis2Placement1);
TEST_ASSERT(Circle->getDim()==2);
ifc2x3::List_IfcLengthMeasure_1_3 CoordinatesAxis23D;
CoordinatesAxis23D.push_back(0);
CoordinatesAxis23D.push_back(0);
CoordinatesAxis23D.push_back(0);
Step::RefPtr< ifc2x3::IfcCartesianPoint > Location2 = eds->createIfcCartesianPoint();
Location2->setCoordinates(CoordinatesAxis23D);
Step::RefPtr<ifc2x3::IfcDirection> RefDirection2 = eds->createIfcDirection();
RefDirection2->getDirectionRatios().push_back(1.0);
RefDirection2->getDirectionRatios().push_back(1.0);
RefDirection2->getDirectionRatios().push_back(1.0);
Step::RefPtr< ifc2x3::IfcAxis2Placement > Axis2Placement2 = new ifc2x3::IfcAxis2Placement();
Step::RefPtr< ifc2x3::IfcAxis2Placement3D > Axis2Placement3D1 = eds->createIfcAxis2Placement3D();
Axis2Placement3D1->setLocation(Location2);
Axis2Placement3D1->setRefDirection(RefDirection2);
Axis2Placement2->setIfcAxis2Placement3D(Axis2Placement3D1.get());
Circle->setPosition(Axis2Placement2);
TEST_ASSERT(Circle->getDim()==3);
Step::RefPtr<ifc2x3::IfcConic> Ellipse = eds->createIfcEllipse();
TEST_VALIDITY(Ellipse);
TEST_ASSERT(Ellipse->getDim()==0);
ifc2x3::List_IfcLengthMeasure_1_3 CoordinatesAxis22D1;
CoordinatesAxis22D1.push_back(0);
CoordinatesAxis22D1.push_back(0);
Step::RefPtr< ifc2x3::IfcCartesianPoint > Location3 = eds->createIfcCartesianPoint();
Location3->setCoordinates(CoordinatesAxis22D1);
Step::RefPtr<ifc2x3::IfcDirection> RefDirection3 = eds->createIfcDirection();
RefDirection3->getDirectionRatios().push_back(1.0);
RefDirection3->getDirectionRatios().push_back(1.0);
Step::RefPtr< ifc2x3::IfcAxis2Placement > Axis2Placement3 = new ifc2x3::IfcAxis2Placement();
Step::RefPtr< ifc2x3::IfcAxis2Placement2D > Axis2Placement2D2 = eds->createIfcAxis2Placement2D();
Axis2Placement2D2->setLocation(Location3);
Axis2Placement2D2->setRefDirection(RefDirection3);
Axis2Placement3->setIfcAxis2Placement2D(Axis2Placement2D2.get());
Ellipse->setPosition(Axis2Placement3);
TEST_ASSERT(Ellipse->getDim()==2);
//.........这里部分代码省略.........
示例2: main
int main(int n, char **p)
{
Step::RefPtr<ifc2x3::ExpressDataSet> eds ;
try
{
std::cout << "Creating ExpressDa20taSet" << std::endl;
eds = new ifc2x3::ExpressDataSet;
}
catch (const std::exception& e)
{
TEST_FAILURE((std::string("Exception : ") + e.what()).c_str());
}
TEST_VALIDITY(eds);
Step::RefPtr<ifc2x3::IfcAxis2Placement2D> placement = eds->createIfcAxis2Placement2D();
// get P with an empty placement to check default values
ifc2x3::List_IfcDirection_2_2 P = placement->getP();
TEST_ASSERT(P.size()==2);
TEST_VALIDITY(P[0]);
TEST_VALIDITY(P[1]);
if (P[0].valid() && P[1].valid())
{
// test default return value (1,0)
TEST_ASSERT(P[0]->getDirectionRatios()[0]==1.0);
TEST_ASSERT(P[0]->getDirectionRatios()[1]==0.0);
// test default return value (0,1)
TEST_ASSERT(P[1]->getDirectionRatios()[0]==0.0);
TEST_ASSERT(P[1]->getDirectionRatios()[1]==1.0);
}
// create a IfcDirection(0,1) to give some information to the placement
Step::RefPtr<ifc2x3::IfcDirection> RefDirection = eds->createIfcDirection();
RefDirection->getDirectionRatios().push_back(0.0);
RefDirection->getDirectionRatios().push_back(1.0);
placement->setRefDirection(RefDirection);
P = placement->getP();
TEST_VALIDITY(P[0]);
TEST_VALIDITY(P[1]);
if (P[0].valid() && P[1].valid())
{
TEST_ASSERT(P[0]->getDirectionRatios()[0]==0.0);
TEST_ASSERT(P[0]->getDirectionRatios()[1]==1.0);
TEST_ASSERT(P[1]->getDirectionRatios()[0]==-1.0);
TEST_ASSERT(P[1]->getDirectionRatios()[1]==0.0);
}
std::cout << std::endl << "Failure : " << failure_results << " Success : " << success_results << std::endl;
return failure_results;
}