Commit Graph

133 Commits

Author SHA1 Message Date
Andrej 3c7e938d90 IfcGeomWrapper - add missing property for edges_item_ids 2025-06-04 19:04:31 +05:00
Thomas Krijnen 6880e31a66 Add ColladaSerializer to python bindings 2025-03-21 14:35:23 +01:00
Thomas Krijnen fa3c57b016 Implement readable setting type retrieval 2025-03-19 11:42:43 +01:00
Thomas Krijnen 507d13363d delete obsolete files 2025-02-02 09:21:01 +01:00
Richard Brice 26ba761c68 Refactors alignment geometry 2025-01-02 11:10:56 -08:00
Thomas Krijnen faa13a938d Preliminary file existance check before attempting mapping 2024-12-26 14:03:36 +01:00
Thomas Krijnen ea68f90693 Fix other unit conversion issues #5864 2024-12-10 11:19:43 +01:00
Thomas Krijnen 585821d763 Update wrapper for svgfill::arrange_polygons() 2024-11-06 09:15:59 +01:00
Thomas Krijnen ecba1c3e7b Fix for UVs in python binding #5592 2024-10-18 10:37:53 +02:00
Thomas Krijnen b34157e257 Allow returning nativeelement in create_shape() 2024-10-08 20:58:02 +02:00
Thomas Krijnen 314534436d Add .ttl + Well Known Text geometry serializer 2024-09-27 16:32:47 +02:00
Andrej730 dd9de98290 Store edges representation item ids in Triangulation 2024-09-25 19:09:14 +05:00
Andrej730 7e6be53237 Improve error messages for shapes failed to process
Example error messages now:

RuntimeError: Failed to process shape. Product: #3855=IfcSite('3ZGD7y6S5209$mGLi_sPll',#20,'Surface:411452',$,$,#3854,#3850,$,.ELEMENT.,(42,12,46,799999),(-71,-2,0,-599999),0.,$,$), representation: #3849=IfcShapeRepresentation(#93,'FootPrint','Curve2D',(#3841,#31427,#31471,#45600,#45628))

RuntimeError: Failed to process shape. Instance: #3841=IfcPolyline((#3800,#3801,#3802,#3803,#3804,#3805,#3806,#3807,#3808,#3809,#3810,#3811,#3812,#3813,#3814,#3815,#3816,#3817,#3818,#3819,#3820,#3821,#3822,#3823,#3824,#3825,#3826,#3827,#3828,#3829,#3830,#3831,#3832,#3833,#3834,#3835,#3836,#3837,#3838,#3839,#3840,#3800))
2024-09-23 19:33:28 +05:00
Thomas Krijnen 2554280e50 triangulation-type setting for non-triangulated polyhedral from iterator 2024-09-18 19:28:07 +02:00
Andrej730 8f7949808a Move id to IfcGeom::Representation::Representation and document it
as it's a common attribute for all 3 Representation subclasses we have
2024-09-18 18:44:33 +05:00
Thomas Krijnen d879bf9f89 Reintroduce --model-offset/-rotation MODEL_OFFSET/_ROTATION setting #5231 2024-09-13 11:38:24 +02:00
Thomas Krijnen 2545769f67 Add support for IfcSectionedSurface 2024-09-12 11:20:48 +02:00
Richard Brice cc7171060f Decouples evaluation of a piecewise_function from the function itself (#5344) 2024-09-10 10:11:17 -07:00
Andrej730 051d5479fb Strip redundant newline in repr() for taxonomy items
E.g.
print([m.diffuse for m in shape.geometry.materials])

would print
[colour 0.7 0.7 0.7
]

Instead of:
[colour 0.7 0.7 0.7]
2024-09-05 15:08:36 +05:00
Thomas Krijnen d4d9fdff1a Fix and augment v0.8 taxonomy wrapper 2024-09-01 10:40:23 +02:00
Thomas Krijnen d80bcd1a94 Unify variant storage (#5118) 2024-08-23 20:29:07 +02:00
Thomas Krijnen 813a8e12ed Update python bindings for name changes 2024-07-03 20:04:52 +02:00
Thomas Krijnen d4efcd40f9 Advanced brep, sweeps and various fixes #4848 #4895 2024-07-03 14:36:35 +02:00
Thomas Krijnen 19b89a3b1f Workarounds for unstyled elements in tree and wrapper #4924 2024-07-02 11:44:00 +02:00
Andrej730 d1be0e8c1c create_shape - raise the same error for representations and rep items
To be consistent with how it's handled when product+representation is passed, previously it would fail silently.
2024-06-28 18:24:58 +05:00
Thomas Krijnen 54a0a5b454 Some more python mapping wrapping experiments 2024-06-24 21:57:16 +02:00
Andrej730 68d3539a86 mapping binding - never overwrite already set item->instance
1) this way code should be more straightforward
2) this allows us not to reimplement mapping.get_surface_style logic in IfcGeomWrapper as it will be already handled in map_impl(const IfcSchema::IfcStyledItem* inst) and the resulting item->instance is not overridden by IfcStyledItem.
2024-06-21 14:52:37 +05:00
Thomas Krijnen b44b1cb8b0 Fix segfault on gcc #4832 2024-06-19 11:56:56 +02:00
Thomas Krijnen 17a433a97b Don't pass around nullptr in case of failed representation mapping 2024-06-18 12:32:00 +02:00
Andrej730 ffd944f4f9 style->instance_id to consider possible IfcPresentationStyleAssignment in ifc2x3/ifc4 2024-06-12 13:52:44 +02:00
Thomas Krijnen c01263d721 shared_ptr styles all over #4833 2024-06-10 20:13:12 +02:00
Thomas Krijnen 90ae709156 Wrapping of mapping 2024-05-23 13:06:57 +02:00
Thomas Krijnen 4f9f3d1856 Work around for obtaining instance id that blenderbim expects for materials 2024-04-21 13:34:25 +02:00
Thomas Krijnen 29998e3f57 Option to convert placements via convert_shape() #4565 2024-04-19 20:23:59 +02:00
Thomas Krijnen 0edfb0e791 Settings rework for plan/model/context and interfacing with python 2024-04-18 21:04:02 +02:00
Dion Moult 23f91c73af Clash detection features 2024-04-18 10:40:32 +02:00
Thomas Krijnen ce5b1530e3 Add buffer (bytestring) accessors to material colors - plus small fixes 2024-04-17 14:41:49 +02:00
Thomas Krijnen 5e7156021b Add buffer (bytestring) accessors to geometry data 2024-04-17 13:58:05 +02:00
Thomas Krijnen ffa9015798 Lingering changes after conflict resolution 2024-04-16 10:05:40 +02:00
Thomas Krijnen fe7d550ef7 Help swig not to trip over old occt handle definitions 2024-04-15 13:29:18 +02:00
Thomas Krijnen dc81be8a9a item_id vector #3120 2024-04-15 13:02:45 +02:00
Thomas Krijnen 7589e0bd40 Implement product matric access in Python wrapper 2024-04-10 21:22:13 +02:00
Thomas Krijnen d04357933b Release GIL in some cases 2024-02-18 12:06:02 +01:00
Thomas Krijnen 4dcc1b5718 4x3_add2 py wrapper 2023-12-19 12:40:38 +01:00
Thomas Krijnen 6ed91d3ea4 to_string() option, no shared_ptr in OpaqueCoord, add ConvResShape::vertices(), newell instead of simple cross product, create_epeck(double/str) 2023-12-13 16:43:33 +01:00
Thomas Krijnen 1e83e5b018 Python wrapper improvements 2023-12-11 21:06:25 +01:00
Thomas Krijnen f687e610b9 Workaround to create epeck number from python 2023-12-05 21:15:06 +01:00
Thomas Krijnen 4166384ab3 Enable setting ITERATOR_OUTPUT from python 2023-11-28 12:59:32 +01:00
Thomas Krijnen 65e874c67f Drastic settings refactoring 2023-11-15 10:32:33 +01:00
Thomas Krijnen 809668c015 Major update to halfspace algorithm, conversion result shape analysis 2023-11-02 09:04:34 +01:00