mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-19 06:39:13 +00:00
Clean branch
This commit is contained in:
@@ -50,8 +50,6 @@
|
|||||||
#include <boost/make_shared.hpp>
|
#include <boost/make_shared.hpp>
|
||||||
|
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <iostream>
|
|
||||||
|
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include <set>
|
#include <set>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
@@ -291,6 +289,9 @@ int main(int argc, char** argv) {
|
|||||||
("disable-opening-subtractions",
|
("disable-opening-subtractions",
|
||||||
"Specifies whether to disable the boolean subtraction of "
|
"Specifies whether to disable the boolean subtraction of "
|
||||||
"IfcOpeningElement Representations from their RelatingElements.")
|
"IfcOpeningElement Representations from their RelatingElements.")
|
||||||
|
("disable-boolean-results",
|
||||||
|
"Specifies whether to disable the boolean operation within representations "
|
||||||
|
"such as clippings by means of IfcBooleanResult and subtypes")
|
||||||
("enable-layerset-slicing",
|
("enable-layerset-slicing",
|
||||||
"Specifies whether to enable the slicing of products according "
|
"Specifies whether to enable the slicing of products according "
|
||||||
"to their associated IfcMaterialLayerSet.")
|
"to their associated IfcMaterialLayerSet.")
|
||||||
@@ -369,6 +370,14 @@ int main(int argc, char** argv) {
|
|||||||
"Element at which vertical cross sections should be created")
|
"Element at which vertical cross sections should be created")
|
||||||
("elevation-ref", po::value<std::string>(&elevation_ref),
|
("elevation-ref", po::value<std::string>(&elevation_ref),
|
||||||
"Element at which vertical elevations should be created")
|
"Element at which vertical elevations should be created")
|
||||||
|
("auto-section",
|
||||||
|
"Creates SVG cross section drawings automatically based on model extents")
|
||||||
|
("auto-elevation",
|
||||||
|
"Creates SVG elevation drawings automatically based on model extents")
|
||||||
|
("svg-xmlns",
|
||||||
|
"Stores name and guid in a separate namespace as opposed to data-name, data-guid")
|
||||||
|
("svg-poly",
|
||||||
|
"Uses the polygonal algorithm for hidden line rendering")
|
||||||
("door-arcs", "Draw door openings arcs for IfcDoor elements")
|
("door-arcs", "Draw door openings arcs for IfcDoor elements")
|
||||||
("section-height", po::value<double>(§ion_height),
|
("section-height", po::value<double>(§ion_height),
|
||||||
"Specifies the cut section height for SVG 2D geometry.")
|
"Specifies the cut section height for SVG 2D geometry.")
|
||||||
@@ -393,6 +402,7 @@ int main(int argc, char** argv) {
|
|||||||
("site-local-placement",
|
("site-local-placement",
|
||||||
"Place elements locally in the IfcSite coordinate system, instead of placing "
|
"Place elements locally in the IfcSite coordinate system, instead of placing "
|
||||||
"them in the IFC global coords. Applicable for OBJ and DAE output.")
|
"them in the IFC global coords. Applicable for OBJ and DAE output.")
|
||||||
|
("y-up", "Change the 'up' axis to positive Y, default is Z UP,Applicable for OBJ output.")
|
||||||
("building-local-placement",
|
("building-local-placement",
|
||||||
"Similar to --site-local-placement, but placing elements in locally in the parent IfcBuilding coord system")
|
"Similar to --site-local-placement, but placing elements in locally in the parent IfcBuilding coord system")
|
||||||
("precision", po::value<short>(&precision)->default_value(SerializerSettings::DEFAULT_PRECISION),
|
("precision", po::value<short>(&precision)->default_value(SerializerSettings::DEFAULT_PRECISION),
|
||||||
@@ -447,6 +457,7 @@ int main(int argc, char** argv) {
|
|||||||
const bool merge_boolean_operands = vmap.count("merge-boolean-operands") != 0;
|
const bool merge_boolean_operands = vmap.count("merge-boolean-operands") != 0;
|
||||||
#endif
|
#endif
|
||||||
const bool disable_opening_subtractions = vmap.count("disable-opening-subtractions") != 0;
|
const bool disable_opening_subtractions = vmap.count("disable-opening-subtractions") != 0;
|
||||||
|
const bool disable_boolean_results = vmap.count("disable-boolean-results") != 0;
|
||||||
const bool include_plan = vmap.count("plan") != 0;
|
const bool include_plan = vmap.count("plan") != 0;
|
||||||
const bool include_model = vmap.count("model") != 0 || (!include_plan);
|
const bool include_model = vmap.count("model") != 0 || (!include_plan);
|
||||||
const bool enable_layerset_slicing = vmap.count("enable-layerset-slicing") != 0;
|
const bool enable_layerset_slicing = vmap.count("enable-layerset-slicing") != 0;
|
||||||
@@ -457,6 +468,7 @@ int main(int argc, char** argv) {
|
|||||||
const bool use_material_names = vmap.count("use-material-names") != 0;
|
const bool use_material_names = vmap.count("use-material-names") != 0;
|
||||||
const bool use_element_types = vmap.count("use-element-types") != 0;
|
const bool use_element_types = vmap.count("use-element-types") != 0;
|
||||||
const bool use_element_hierarchy = vmap.count("use-element-hierarchy") != 0;
|
const bool use_element_hierarchy = vmap.count("use-element-hierarchy") != 0;
|
||||||
|
const bool use_y_up = vmap.count("y-up") != 0;
|
||||||
const bool no_normals = vmap.count("no-normals") != 0;
|
const bool no_normals = vmap.count("no-normals") != 0;
|
||||||
const bool center_model = vmap.count("center-model") != 0;
|
const bool center_model = vmap.count("center-model") != 0;
|
||||||
const bool center_model_geometry = vmap.count("center-model-geometry") != 0;
|
const bool center_model_geometry = vmap.count("center-model-geometry") != 0;
|
||||||
@@ -715,6 +727,7 @@ int main(int argc, char** argv) {
|
|||||||
settings.set(IfcGeom::IteratorSettings::FASTER_BOOLEANS, merge_boolean_operands);
|
settings.set(IfcGeom::IteratorSettings::FASTER_BOOLEANS, merge_boolean_operands);
|
||||||
#endif
|
#endif
|
||||||
settings.set(IfcGeom::IteratorSettings::DISABLE_OPENING_SUBTRACTIONS, disable_opening_subtractions);
|
settings.set(IfcGeom::IteratorSettings::DISABLE_OPENING_SUBTRACTIONS, disable_opening_subtractions);
|
||||||
|
settings.set(IfcGeom::IteratorSettings::DISABLE_BOOLEAN_RESULT, disable_boolean_results);
|
||||||
settings.set(IfcGeom::IteratorSettings::INCLUDE_CURVES, include_plan);
|
settings.set(IfcGeom::IteratorSettings::INCLUDE_CURVES, include_plan);
|
||||||
settings.set(IfcGeom::IteratorSettings::EXCLUDE_SOLIDS_AND_SURFACES, !include_model);
|
settings.set(IfcGeom::IteratorSettings::EXCLUDE_SOLIDS_AND_SURFACES, !include_model);
|
||||||
settings.set(IfcGeom::IteratorSettings::APPLY_LAYERSETS, enable_layerset_slicing);
|
settings.set(IfcGeom::IteratorSettings::APPLY_LAYERSETS, enable_layerset_slicing);
|
||||||
@@ -729,6 +742,7 @@ int main(int argc, char** argv) {
|
|||||||
|
|
||||||
settings.set(SerializerSettings::USE_ELEMENT_NAMES, use_element_names);
|
settings.set(SerializerSettings::USE_ELEMENT_NAMES, use_element_names);
|
||||||
settings.set(SerializerSettings::USE_ELEMENT_GUIDS, use_element_guids);
|
settings.set(SerializerSettings::USE_ELEMENT_GUIDS, use_element_guids);
|
||||||
|
settings.set(SerializerSettings::USE_Y_UP, use_y_up);
|
||||||
settings.set(SerializerSettings::USE_ELEMENT_STEPIDS, use_element_stepids);
|
settings.set(SerializerSettings::USE_ELEMENT_STEPIDS, use_element_stepids);
|
||||||
settings.set(SerializerSettings::USE_MATERIAL_NAMES, use_material_names);
|
settings.set(SerializerSettings::USE_MATERIAL_NAMES, use_material_names);
|
||||||
settings.set(SerializerSettings::USE_ELEMENT_TYPES, use_element_types);
|
settings.set(SerializerSettings::USE_ELEMENT_TYPES, use_element_types);
|
||||||
@@ -943,6 +957,14 @@ int main(int argc, char** argv) {
|
|||||||
if (vmap.count("elevation-ref")) {
|
if (vmap.count("elevation-ref")) {
|
||||||
static_cast<SvgSerializer*>(serializer.get())->setElevationRef(elevation_ref);
|
static_cast<SvgSerializer*>(serializer.get())->setElevationRef(elevation_ref);
|
||||||
}
|
}
|
||||||
|
if (vmap.count("auto-section")) {
|
||||||
|
static_cast<SvgSerializer*>(serializer.get())->setAutoSection(true);
|
||||||
|
}
|
||||||
|
if (vmap.count("auto-elevation")) {
|
||||||
|
static_cast<SvgSerializer*>(serializer.get())->setAutoElevation(true);
|
||||||
|
}
|
||||||
|
static_cast<SvgSerializer*>(serializer.get())->setUseNamespace(vmap.count("svg-xmlns") > 0);
|
||||||
|
static_cast<SvgSerializer*>(serializer.get())->setUseHlrPoly(vmap.count("svg-poly") > 0);
|
||||||
if (relative_center_x && relative_center_y) {
|
if (relative_center_x && relative_center_y) {
|
||||||
static_cast<SvgSerializer*>(serializer.get())->setDrawingCenter(*relative_center_x, *relative_center_y);
|
static_cast<SvgSerializer*>(serializer.get())->setDrawingCenter(*relative_center_x, *relative_center_y);
|
||||||
}
|
}
|
||||||
@@ -1336,14 +1358,7 @@ namespace latebound_access {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void fix_quantities(IfcParse::IfcFile& f, bool no_progress, bool quiet, bool stderr_progress) {
|
void fix_quantities(IfcParse::IfcFile& f, bool no_progress, bool quiet, bool stderr_progress) {
|
||||||
Logger::Status("HLEEEEEEEE");
|
|
||||||
std::ofstream outfile("test78.txt");
|
|
||||||
|
|
||||||
outfile << "my text here!" << std::endl;
|
|
||||||
|
|
||||||
outfile.close();
|
|
||||||
{
|
{
|
||||||
|
|
||||||
auto delete_reversed = [&f](const IfcEntityList::ptr& insts) {
|
auto delete_reversed = [&f](const IfcEntityList::ptr& insts) {
|
||||||
if (!insts) {
|
if (!insts) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
Reference in New Issue
Block a user