Sfoglia il codice sorgente

- fix various vc compile errors when building with boost.

Alexander Gessler 12 anni fa
parent
commit
667a51e0ab
3 ha cambiato i file con 5 aggiunte e 4 eliminazioni
  1. 1 1
      code/IFCGeometry.cpp
  2. 2 2
      code/IFCOpenings.cpp
  3. 2 1
      code/IfcBoolean.cpp

+ 1 - 1
code/IFCGeometry.cpp

@@ -764,7 +764,7 @@ bool ProcessGeometricItem(const IfcRepresentationItem& geo, std::vector<unsigned
 			conv.collect_openings->push_back(TempOpening(geo.ToPtr<IfcSolidModel>(),
 				IfcVector3(0,0,0),
 				meshtmp,
-				boost::shared_ptr<TempMesh>(NULL)));
+				boost::shared_ptr<TempMesh>((TempMesh*)NULL)));
 		}
 		return true;
 	} 

+ 2 - 2
code/IFCOpenings.cpp

@@ -1188,14 +1188,14 @@ bool GenerateOpenings(std::vector<TempOpening>& openings,
 			norm_extrusion_dir = IfcVector3();
 		}
 
-		TempMesh* profile_data =  opening.profileMesh;
+		TempMesh* profile_data =  opening.profileMesh.get();
 		bool is_2d_source = false;
 		if (opening.profileMesh2D && norm_extrusion_dir.SquareLength() > 0) {
 			
 			if(fabs(norm_extrusion_dir * wall_extrusion_axis_norm) < 0.1) {
 				// horizontal extrusion
 				if (fabs(norm_extrusion_dir * nor) > 0.9) {
-					profile_data = opening.profileMesh2D;
+					profile_data = opening.profileMesh2D.get();
 					is_2d_source = true;
 				}
 				else {

+ 2 - 1
code/IfcBoolean.cpp

@@ -582,7 +582,8 @@ void ProcessBooleanExtrudedAreaSolidDifference(const IfcExtrudedAreaSolid* as, T
 	boost::shared_ptr<TempMesh> meshtmp = boost::shared_ptr<TempMesh>(new TempMesh());
 	ProcessExtrudedAreaSolid(*as,*meshtmp,conv,false);
 
-	std::vector<TempOpening> openings(1, TempOpening(as,IfcVector3(0,0,0),meshtmp,boost::shared_ptr<TempMesh>(NULL)));
+	std::vector<TempOpening> openings(1, TempOpening(as,IfcVector3(0,0,0),meshtmp,
+		boost::shared_ptr<TempMesh>((TempMesh*)NULL)));
 
 	result = first_operand;