Commit Graph

211 Commits

Author SHA1 Message Date
Ralph Wessel 0dee313366 Fixed conversion of enum property values 2024-10-23 09:32:05 +01:00
Ralph Wessel a169d8b1d2 Improved detection of null property settings/values to avoid serialising null values in PropertiedWrap 2024-10-22 21:49:37 +01:00
Ralph Wessel 6d51b2d868 Updated VS projects
Added missing break statements in Value.cpp
2024-10-22 21:24:19 +01:00
Ralph Wessel 2c6909e98e Added property::Group
Added property Group database
Property template group & group name access added
2024-10-22 20:09:01 +01:00
Ralph Wessel eeb4dab690 Property dbase should not check tableID if none is specified 2024-10-22 16:31:30 +01:00
Ralph Wessel e27808b73d Updated VS projects 2024-10-22 16:09:33 +01:00
Ralph Wessel 5f1c942584 Added serialisation for Propertied objects and Properties
Added serialisation hierarchy for properties within ModelElements
Additional data access to Setting, Template, Value and Property
2024-10-22 15:49:16 +01:00
Ralph Wessel 63bb28db0f Adding properties to element serialisation 2024-10-22 10:24:46 +01:00
Ralph Wessel 01bb88b4a1 ModelElement subclassed from Classified and Propertied 2024-10-21 21:45:07 +01:00
Ralph Wessel 35f4e58a58 Added BIM property database + engine
Added property classes including:
- templates
- settings
- values
Added Classified interface for records supporting classification
Added Propertied interface for records supporting attached properties
Distinguished model elements from drawing elements (only model elements support classification/properties) with:
- DrawingElement (2D only)
- ModelElement (having a 3D/model presence)
2024-10-21 16:25:23 +01:00
Ralph Wessel 878988df95 Update Xcode project
BIM core dbase engines should be able to react to project events
Attribute dbase resets storey cache on project changes
2024-10-17 17:22:51 +01:00
Ralph Wessel f44f0413d0 ColumnSegment move constructor should be noexcept 2024-10-16 17:00:03 +01:00
Ralph Wessel b80b5aef94 Fixed ColumnSegment copy constructor 2024-10-16 16:44:38 +01:00
Ralph Wessel 702f99eced Reduced the number of objects that define a name for 'speckle_type' (default to 'Base' instead) 2024-10-16 15:06:06 +01:00
Ralph Wessel 42cf641a01 Merge pull request #7 from specklesystems/david/cnx-150-implement-selectionbinding
David/cnx 150 implement selectionbinding
2024-10-16 15:04:58 +01:00
Ralph Wessel 8e80d5ddd5 Merge branch 'develop' into david/cnx-150-implement-selectionbinding 2024-10-16 15:04:07 +01:00
David Kekesi 3813c8740f SelectionInfo::initialize changed to private 2024-10-16 15:53:59 +02:00
David Kekesi 5c1511e850 code cleanup 2024-10-16 15:50:15 +02:00
David Kekesi 511311eb84 selectionBridge works 2024-10-16 15:08:34 +02:00
Ralph Wessel ebed71a791 Removed unused static var from SelectionSubscriber 2024-10-16 11:03:38 +01:00
Ralph Wessel 3e7b78e50d Allow SelectionSubscriber to start/stop outside initialisation phase 2024-10-16 10:31:11 +01:00
Ralph Wessel 2d23eb6b28 Fixes to Column and ColumnSegment classes 2024-10-15 23:05:07 +01:00
Ralph Wessel ffb9cf0cef Updated VS projects 2024-10-15 21:12:37 +01:00
Ralph Wessel e54962e76f Added Column support:
- Column element
- ColumnSegment element
- SegmentedColumn for managing segment retrieval
- Segment/Path interfaces
- Element Part interface
GenericElement now represents all element types with no specific class
Element becomes abstract base for all elements
Added Memo to handle supplementary element data
Added BIMMemory for common BIM memory utilities
BIMElementDatabase adds Memo table support
ArchicadElementDBaseEngine creates GenericElement, Column or ColumnSegment elements
2024-10-15 21:05:57 +01:00
David Kekesi def9162e4c added SelectionBridge, SelectionInfo, GetSelection 2024-10-15 17:13:06 +02:00
Ralph Wessel 9c10300f01 Merge pull request #6 from specklesystems/FinishProxies_WIP
Finish proxies wip
2024-10-14 16:04:52 +01:00
David Kekesi 902fb0f626 changed ArchicadRGB::write to export ARGB colors instead of RGB 2024-10-14 15:46:12 +02:00
Ralph Wessel 432e5a0b0b Merge branch 'FinishProxies_WIP' of https://github.com/specklesystems/speckle-cpp-connectors into FinishProxies_WIP 2024-10-14 11:25:32 +01:00
Ralph Wessel a67361c903 FinishProxy should call base object when (de)serialising 2024-10-14 11:25:09 +01:00
Ralph Wessel e82698ac3a Shininess in Modeler::Material is 1-100 scale (NB: looks logarithmic but will resolve on advice from GS) 2024-10-14 11:18:48 +01:00
Ralph Wessel 2fab7da57d Update FinishProxy to be a BIMRecord, i.e. export speckle_type and applicaiton ID
BIMRecord constructor should allow units to be initialised to nullopt
2024-10-14 11:17:17 +01:00
Ralph Wessel 36b95436ae Finishes have no unit of measurement 2024-10-14 10:13:23 +01:00
Ralph Wessel 24f6a6349a Capture ID of Modeler::Material in Finish 2024-10-14 10:00:23 +01:00
Ralph Wessel bd54ae3995 Change JSON tag from "unit" to "units" 2024-10-14 09:50:07 +01:00
Ralph Wessel 7e742796f5 Corrected Mesh speckle_type
Mesh constructor failed to set BIM ID
2024-10-13 22:27:59 +01:00
Ralph Wessel 373179fa65 Assigned serialisation type for Str256
Linked mesh IDs in finish proxies is a single array
2024-10-13 22:16:52 +01:00
Ralph Wessel 11bfb9333f Updated VS projects 2024-10-13 21:35:10 +01:00
Ralph Wessel 45c0705a60 #include <ACAPinc.h> prior to other includes 2024-10-13 19:57:01 +01:00
Ralph Wessel 7f4b7112ae Finishes incorporates all Archicad material properties
Serialisation wrapper for Archicad colour rgb colour
2024-10-13 17:49:17 +01:00
Ralph Wessel 05c2cdc47a Updated VS projects
Using Str256 for AC attribute name
WIP - using fixed size for material proxy serialisation count (actual count not known at this point - may need to use something like max size_t)
2024-10-12 09:19:09 +01:00
Ralph Wessel dbc2c79f2a Added serilaisation wrapper for 256-byte char array (used for some AC string types) 2024-10-12 09:06:32 +01:00
Ralph Wessel 36e50bb63e SendObject and SendViaBrowserArgs forward the wrapped object management to the serialiser
ProjectCollection defines itself as a serialisation manager (to collect material proxies)
2024-10-11 17:44:41 +01:00
Ralph Wessel d3492512cd Update SendObject and SendViaBrowserArgs to use serialisation management (to support collection of material proxies) 2024-10-11 17:19:04 +01:00
Ralph Wessel 65b636accb Mesh serialisation now directly engages with management to populate material proxies rather than using a "dummy" field 2024-10-11 16:53:42 +01:00
David Kekesi 791e9f072f finish proxies wip 2024-10-11 17:10:05 +02:00
kekesidavid 68c98abde9 Merge pull request #5 from specklesystems/david/cnx-576-implement-element-getbody
David/cnx 576 implement element getbody
2024-10-11 13:20:44 +02:00
Ralph Wessel a117e327c7 Updated VS project 2024-10-11 11:47:35 +01:00
Ralph Wessel de46d899b0 Added FinishProxy to collect mesh finishes (to build 'material proxy collection) 2024-10-11 11:45:10 +01:00
David Kekesi 30163bfd9d export mesh, vertices, faces, colors 2024-10-11 12:44:55 +02:00
Ralph Wessel 21fc2cff25 Added FinishCollector interface as a serialisation manager to collect finishes from meshes as they are serialised
ProjectCollection is now a FinishCollector (accumulates the finishes to write the material proxies at the end)
2024-10-11 09:58:26 +01:00