当前位置: 首页>>代码示例>>C++>>正文


C++ RefPtr::setIfcHalfSpaceSolid方法代码示例

本文整理汇总了C++中step::RefPtr::setIfcHalfSpaceSolid方法的典型用法代码示例。如果您正苦于以下问题:C++ RefPtr::setIfcHalfSpaceSolid方法的具体用法?C++ RefPtr::setIfcHalfSpaceSolid怎么用?C++ RefPtr::setIfcHalfSpaceSolid使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在step::RefPtr的用法示例。


在下文中一共展示了RefPtr::setIfcHalfSpaceSolid方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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);

	Step::RefPtr<ifc2x3::IfcBooleanResult> BoolRes = eds->createIfcBooleanResult();

	LOG_DEBUG("TEST IFCSOLIDMODEL");
	Step::RefPtr<ifc2x3::IfcCsgSolid> BoolRestmp1 = eds->createIfcCsgSolid();
	Step::RefPtr<ifc2x3::IfcSweptDiskSolid> BoolRestmp2 = eds->createIfcSweptDiskSolid();

	Step::RefPtr<ifc2x3::IfcBooleanOperand> FirstOperand = new ifc2x3::IfcBooleanOperand();
	Step::RefPtr<ifc2x3::IfcBooleanOperand> SecondOperand = new ifc2x3::IfcBooleanOperand();

	FirstOperand->setIfcSolidModel(BoolRestmp1.get());
	SecondOperand->setIfcSolidModel(BoolRestmp2.get());

	BoolRes->setFirstOperand(FirstOperand);
	BoolRes->setSecondOperand(SecondOperand);

	ifc2x3::IfcDimensionCount Dim = BoolRes->getDim();
	TEST_ASSERT(Dim==BoolRestmp1->getDim());
	TEST_ASSERT(Dim==3);

	LOG_DEBUG("TEST IFCHALFSPACESOLID");
	Step::RefPtr<ifc2x3::IfcHalfSpaceSolid> BoolRestmp3 = eds->createIfcHalfSpaceSolid();
	Step::RefPtr<ifc2x3::IfcHalfSpaceSolid> BoolRestmp4 = eds->createIfcHalfSpaceSolid();

	FirstOperand->setIfcHalfSpaceSolid(BoolRestmp3.get());
	SecondOperand->setIfcHalfSpaceSolid(BoolRestmp4.get());

	BoolRes->setFirstOperand(FirstOperand);
	BoolRes->setSecondOperand(SecondOperand);

	Dim = BoolRes->getDim();
	TEST_ASSERT(Dim==BoolRestmp3->getDim());
	TEST_ASSERT(Dim==3);

	LOG_DEBUG("TEST IFCCSGPRIMITIVE3D");
	Step::RefPtr<ifc2x3::IfcBlock> BoolRestmp5 = eds->createIfcBlock();
	Step::RefPtr<ifc2x3::IfcSphere> BoolRestmp6 = eds->createIfcSphere();

	FirstOperand->setIfcCsgPrimitive3D(BoolRestmp5.get());
	SecondOperand->setIfcCsgPrimitive3D(BoolRestmp6.get());

	BoolRes->setFirstOperand(FirstOperand);
	BoolRes->setSecondOperand(SecondOperand);

	Dim = BoolRes->getDim();
	TEST_ASSERT(Dim==BoolRestmp5->getDim());
	TEST_ASSERT(Dim==3);

	LOG_DEBUG("TEST IFCBOOLEANRESULT");
	Step::RefPtr<ifc2x3::IfcBooleanResult> BoolRestmp7 = eds->createIfcBooleanResult();
	Step::RefPtr<ifc2x3::IfcBooleanResult> BoolRestmp8 = eds->createIfcBooleanResult();

	Step::RefPtr<ifc2x3::IfcHalfSpaceSolid> BoolRestmp7_1 = eds->createIfcHalfSpaceSolid();
	Step::RefPtr<ifc2x3::IfcHalfSpaceSolid> BoolRestmp7_2 = eds->createIfcHalfSpaceSolid();

	Step::RefPtr<ifc2x3::IfcBlock> BoolRestmp8_1 = eds->createIfcBlock();
	Step::RefPtr<ifc2x3::IfcSphere> BoolRestmp8_2 = eds->createIfcSphere();

	Step::RefPtr<ifc2x3::IfcBooleanOperand> FirstOperand_7 = new ifc2x3::IfcBooleanOperand();
	Step::RefPtr<ifc2x3::IfcBooleanOperand> SecondOperand_7 = new ifc2x3::IfcBooleanOperand();

	FirstOperand_7->setIfcHalfSpaceSolid(BoolRestmp7_1.get());
	SecondOperand_7->setIfcHalfSpaceSolid(BoolRestmp7_2.get());

	Step::RefPtr<ifc2x3::IfcBooleanOperand> FirstOperand_8 = new ifc2x3::IfcBooleanOperand();
	Step::RefPtr<ifc2x3::IfcBooleanOperand> SecondOperand_8 = new ifc2x3::IfcBooleanOperand();

	FirstOperand_8->setIfcCsgPrimitive3D(BoolRestmp8_1.get());
	SecondOperand_8->setIfcCsgPrimitive3D(BoolRestmp8_2.get());

	BoolRestmp7->setFirstOperand(FirstOperand_7);
	BoolRestmp7->setSecondOperand(SecondOperand_7);

	BoolRestmp8->setFirstOperand(FirstOperand_8);
	BoolRestmp8->setSecondOperand(SecondOperand_8);

	FirstOperand->setIfcBooleanResult(BoolRestmp7.get());
	SecondOperand->setIfcBooleanResult(BoolRestmp8.get());

	BoolRes->setFirstOperand(FirstOperand);
	BoolRes->setSecondOperand(SecondOperand);

	Dim = BoolRes->getDim();

	TEST_ASSERT(Dim==BoolRestmp7->getDim());
	TEST_ASSERT(Dim==3);
//.........这里部分代码省略.........
开发者ID:cstb,项目名称:ifc-sdk,代码行数:101,代码来源:main.cpp


注:本文中的step::RefPtr::setIfcHalfSpaceSolid方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。