@@ -766,44 +766,81 @@ define_ok_modeling_cmd_response_enum! {
766
766
pub max_distance: LengthUnit ,
767
767
}
768
768
769
+ /// Faces and edges id info (most used in identifying geometry in patterned and mirrored objects).
770
+ #[ derive( Debug , Serialize , Deserialize , Clone , JsonSchema , ModelingCmdOutput ) ]
771
+ pub struct FaceEdgeInfo {
772
+ /// The UUID of the object.
773
+ pub object_id: Uuid ,
774
+ /// The faces of each object.
775
+ pub faces: Vec <Uuid >,
776
+ /// The edges of each object.
777
+ pub edges: Vec <Uuid >,
778
+ }
779
+
769
780
/// The response from the `EntityClone` command.
770
781
#[ derive( Debug , Serialize , Deserialize , Clone , JsonSchema , ModelingCmdOutput ) ]
771
782
pub struct EntityClone {
783
+ /// The UUIDs of the entities that were created.
784
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
785
+ pub entity_ids: Vec <Uuid >,
786
+ /// The Face and Edge Ids of the cloned entity.
787
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
788
+ pub face_edge_ids: Vec <FaceEdgeInfo >,
772
789
}
773
790
774
791
/// The response from the `EntityLinearPatternTransform` command.
775
792
#[ derive( Debug , Serialize , Deserialize , Clone , JsonSchema , ModelingCmdOutput ) ]
776
793
pub struct EntityLinearPatternTransform {
777
794
/// The UUIDs of the entities that were created.
795
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
778
796
pub entity_ids: Vec <Uuid >,
797
+ /// The Face, edge, and entity ids of the patterned entities.
798
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
799
+ pub entity_face_edge_ids: Vec <FaceEdgeInfo >,
779
800
}
780
801
781
802
/// The response from the `EntityLinearPattern` command.
782
803
#[ derive( Debug , Serialize , Deserialize , Clone , JsonSchema , ModelingCmdOutput ) ]
783
804
pub struct EntityLinearPattern {
784
805
/// The UUIDs of the entities that were created.
806
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
785
807
pub entity_ids: Vec <Uuid >,
808
+ /// The Face, edge, and entity ids of the patterned entities.
809
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
810
+ pub entity_face_edge_ids: Vec <FaceEdgeInfo >,
786
811
}
787
812
788
813
/// The response from the `EntityCircularPattern` command.
789
814
#[ derive( Debug , Serialize , Deserialize , Clone , JsonSchema , ModelingCmdOutput ) ]
790
815
pub struct EntityCircularPattern {
791
816
/// The UUIDs of the entities that were created.
817
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
792
818
pub entity_ids: Vec <Uuid >,
819
+ /// The Face, edge, and entity ids of the patterned entities.
820
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
821
+ pub entity_face_edge_ids: Vec <FaceEdgeInfo >,
793
822
}
794
823
795
824
/// The response from the `EntityMirror` endpoint.
796
825
#[ derive( Debug , Serialize , Deserialize , Clone , JsonSchema , ModelingCmdOutput ) ]
797
826
pub struct EntityMirror {
798
827
/// The UUIDs of the entities that were created.
799
- pub entity_ids: Vec <Uuid >
828
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
829
+ pub entity_ids: Vec <Uuid >,
830
+ /// The Face, edge, and entity ids of the patterned entities.
831
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
832
+ pub entity_face_edge_ids: Vec <FaceEdgeInfo >,
800
833
}
801
834
802
835
/// The response from the `EntityMirrorAcrossEdge` endpoint.
803
836
#[ derive( Debug , Serialize , Deserialize , Clone , JsonSchema , ModelingCmdOutput ) ]
804
837
pub struct EntityMirrorAcrossEdge {
805
838
/// The UUIDs of the entities that were created.
806
- pub entity_ids: Vec <Uuid >
839
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
840
+ pub entity_ids: Vec <Uuid >,
841
+ /// The Face, edge, and entity ids of the patterned entities.
842
+ #[ serde( default , skip_serializing_if = "Vec::is_empty" ) ]
843
+ pub entity_face_edge_ids: Vec <FaceEdgeInfo >,
807
844
}
808
845
809
846
/// The response from the `EntityMakeHelix` endpoint.
0 commit comments