OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::CadFeature Struct Reference

#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/libslic3r/CAD/CadDocument.hpp>

Collaboration diagram for Slic3r::CadFeature:

Classes

struct  BodyId

Public Member Functions

bool is_text () const
std::vector< int > dressup_edge_ids () const
template<class Archive>
void save (Archive &ar) const
template<class Archive>
void load (Archive &ar)
template<class Archive>
void load_flat_v4 (Archive &ar)

Public Attributes

CadFeatureType type {CadFeatureType::Sketch}
std::string name
bool enabled {true}
SketchShape shape {SketchShape::Rectangle}
SketchPlane plane {SketchPlane::XY()}
double width {20}
double height {20}
double radius {10}
SketchProfile profile
std::vector< SketchEntity > entities
std::vector< SketchConstraintDef > constraints
std::vector< SketchEntityConstraintDef > entity_constraints
std::vector< std::vector< std::vector< Vec2d > > > imported_regions
TopoDS_Shape imported_solid
Vec2d import_offset {0, 0}
double import_scale_x {1.0}
double import_scale_y {1.0}
bool import_on_face {false}
int import_face_body {-1}
int sketch_ref {-1}
double distance {10}
bool symmetric {false}
BooleanMode mode {BooleanMode::New}
ExtrudeEnd extrude_end {ExtrudeEnd::Blind}
double distance2 {0}
double taper_deg {0}
bool flip {false}
int up_to_face {-1}
int extrude_src_face {-1}
Vec3d up_to_point {0,0,0}
int target_body {-1}
double dressup_size {1.0}
FaceGroup face_group {FaceGroup::All}
int dressup_edge {-1}
std::vector< int > dressup_edges
std::string text_string
std::string text_font
double text_height {0.0}
double hole_diameter {5}
double hole_depth {10}
bool hole_through {true}
double hole_x {0}
double hole_y {0}
int hole_style {0}
double hole_cbore_diameter {0}
double hole_cbore_depth {0}
double hole_csink_diameter {0}
double hole_csink_angle {90}
std::string hole_standard
double thread_radius {5}
double thread_pitch {2}
double thread_height {10}
double thread_depth {1}
bool thread_internal {false}
bool thread_major_nominal {false}
double thread_x {0}
double thread_y {0}
double shell_thickness {2}
int shell_face {-1}
int draft_face {-1}
double draft_angle {5}
double revolve_angle {360}
int revolve_axis {0}
int revolve_axis_entity {-1}
int sweep_path_ref {-1}
std::vector< int > loft_profile_refs
bool loft_ruled {false}
bool pattern_circular {false}
int pattern_count {3}
double pattern_spacing {20}
int pattern_dir {0}
double pattern_angle {360}
bool pattern_inclusive {false}
int pattern_curve_sketch {-1}
int pattern_curve_entity {-1}
std::map< std::string, std::string > expr
std::vector< BodyId > body_ref_ids
bool body_refs_pending {false}
int plane_base {0}
double plane_offset {20}
double plane_angle_tilt {0}
int plane_axis {0}
PlaneType plane_type {PlaneType::Offset}
int plane_face_body {-1}
int plane_face {-1}
int plane_face2_body {-1}
int plane_face2 {-1}
int plane_edge_body {-1}
int plane_edge {-1}
int plane_edge2_body {-1}
int plane_edge2 {-1}
double plane_u_size {60}
double plane_v_size {60}
int bool_tool_body {-1}
bool bool_keep_tool {false}
double bool_tolerance {0.0}
int bool_target_face {-1}
int bool_tool_face {-1}
double cut_offset {0.0}
bool cut_flip {false}
bool cut_keep_upper {true}
bool cut_keep_lower {false}
bool mirror_keep_original {true}
AxisType axis_type {AxisType::TwoPoints}
Vec3d axis_p1 {0, 0, 0}
Vec3d axis_p2 {0, 0, 10}
int axis_body {-1}
int axis_face {-1}
int axis_edge {-1}
int axis_plane_a {-1}
int axis_plane_b {-1}
CoordSysType coordsys_type {CoordSysType::PointWorld}
Vec3d coordsys_point {0, 0, 0}
int coordsys_body {-1}
int coordsys_face {-1}
int coordsys_edge {-1}
Vec3d coordsys_x_hint {1, 0, 0}
int coordsys_face_kind {-1}
int coordsys_face_edges {-1}
double helix_radius {10}
double helix_pitch {5}
double helix_height {20}
bool helix_left_handed {false}
double helix_taper_deg {0}
Vec3d xf_translate {0, 0, 0}
Vec3d xf_axis {0, 0, 1}
Vec3d xf_pivot {0, 0, 0}
double xf_angle_deg {0}
bool xf_copy {false}
int thicken_face {-1}
double thicken_thickness {2}
bool thicken_flip {false}
int cut_face_body {-1}
int cut_face {-1}
int project_source_body {-1}
std::vector< int > project_edges
int project_face {-1}
std::vector< int > delete_faces
int rib_sketch_ref {-1}
int rib_entity {-1}
double rib_thickness {2}
double rib_depth {10}
int mate_kind {0}
int mate_cs_a {-1}
int mate_cs_b {-1}
double mate_offset {0}
double mate_angle {0}
bool mate_flip {false}

Detailed Description


Class Documentation

◆ Slic3r::CadFeature::BodyId

struct Slic3r::CadFeature::BodyId
Class Members
int ord {0}
int src {-1}

Member Function Documentation

◆ dressup_edge_ids()

std::vector< int > Slic3r::CadFeature::dressup_edge_ids ( ) const
inline
133 {
134 if (!dressup_edges.empty()) return dressup_edges;
135 if (dressup_edge >= 0) return { dressup_edge };
136 return {};
137 }
int dressup_edge
Definition CadDocument.hpp:118
std::vector< int > dressup_edges
Definition CadDocument.hpp:123

References dressup_edge, and dressup_edges.

◆ is_text()

bool Slic3r::CadFeature::is_text ( ) const
inline
132{ return !text_string.empty(); }
std::string text_string
Definition CadDocument.hpp:129

References text_string.

◆ load()

template<class Archive>
void Slic3r::CadFeature::load ( Archive & ar)
inline
418 {
419 std::string brep;
436 brep,
452 expr,
460 }
TopoDS_Shape brep_from_string(const std::string &d)
Definition CadDocument.cpp:4411
std::vector< int > project_edges
Definition CadDocument.hpp:347
int pattern_count
Definition CadDocument.hpp:208
int axis_face
Definition CadDocument.hpp:292
bool enabled
Definition CadDocument.hpp:43
int plane_edge2
Definition CadDocument.hpp:256
double hole_x
Definition CadDocument.hpp:143
double thread_x
Definition CadDocument.hpp:171
int project_face
Definition CadDocument.hpp:348
int axis_body
Definition CadDocument.hpp:291
int shell_face
Definition CadDocument.hpp:176
int target_body
Definition CadDocument.hpp:113
Vec3d xf_pivot
Definition CadDocument.hpp:329
bool thread_major_nominal
Definition CadDocument.hpp:170
int coordsys_face
Definition CadDocument.hpp:301
double rib_thickness
Definition CadDocument.hpp:357
double bool_tolerance
Definition CadDocument.hpp:269
SketchPlane plane
Definition CadDocument.hpp:47
bool symmetric
Definition CadDocument.hpp:100
double text_height
Definition CadDocument.hpp:131
Vec3d axis_p1
Definition CadDocument.hpp:289
double rib_depth
Definition CadDocument.hpp:358
int thicken_face
Definition CadDocument.hpp:335
bool hole_through
Definition CadDocument.hpp:142
double thread_y
Definition CadDocument.hpp:172
CoordSysType coordsys_type
Definition CadDocument.hpp:298
bool mate_flip
Definition CadDocument.hpp:372
double hole_csink_diameter
Definition CadDocument.hpp:151
bool flip
Definition CadDocument.hpp:105
double pattern_angle
Definition CadDocument.hpp:211
TopoDS_Shape imported_solid
Definition CadDocument.hpp:82
double distance
Definition CadDocument.hpp:99
bool cut_keep_lower
Definition CadDocument.hpp:278
Vec2d import_offset
Definition CadDocument.hpp:89
bool loft_ruled
Definition CadDocument.hpp:200
std::string hole_standard
Definition CadDocument.hpp:153
double cut_offset
Definition CadDocument.hpp:275
int coordsys_face_kind
Definition CadDocument.hpp:313
double radius
Definition CadDocument.hpp:50
std::vector< SketchEntityConstraintDef > entity_constraints
Definition CadDocument.hpp:66
int bool_tool_face
Definition CadDocument.hpp:271
AxisType axis_type
Definition CadDocument.hpp:288
double dressup_size
Definition CadDocument.hpp:116
PlaneType plane_type
Definition CadDocument.hpp:248
int revolve_axis_entity
Definition CadDocument.hpp:189
double helix_taper_deg
Definition CadDocument.hpp:323
double mate_angle
Definition CadDocument.hpp:371
double height
Definition CadDocument.hpp:49
double taper_deg
Definition CadDocument.hpp:104
double hole_depth
Definition CadDocument.hpp:141
int cut_face_body
Definition CadDocument.hpp:342
double hole_y
Definition CadDocument.hpp:144
int mate_kind
Definition CadDocument.hpp:367
Vec3d coordsys_point
Definition CadDocument.hpp:299
double thread_depth
Definition CadDocument.hpp:160
bool helix_left_handed
Definition CadDocument.hpp:322
int extrude_src_face
Definition CadDocument.hpp:107
double revolve_angle
Definition CadDocument.hpp:185
double thread_radius
Definition CadDocument.hpp:156
int pattern_curve_sketch
Definition CadDocument.hpp:222
double width
Definition CadDocument.hpp:48
int pattern_dir
Definition CadDocument.hpp:210
int axis_plane_a
Definition CadDocument.hpp:294
int plane_face2
Definition CadDocument.hpp:252
std::string text_font
Definition CadDocument.hpp:130
int coordsys_face_edges
Definition CadDocument.hpp:314
Vec3d xf_axis
Definition CadDocument.hpp:328
int coordsys_body
Definition CadDocument.hpp:300
int import_face_body
Definition CadDocument.hpp:95
bool import_on_face
Definition CadDocument.hpp:94
double hole_diameter
Definition CadDocument.hpp:140
double thicken_thickness
Definition CadDocument.hpp:336
std::vector< int > delete_faces
Definition CadDocument.hpp:352
SketchShape shape
Definition CadDocument.hpp:46
bool thread_internal
Definition CadDocument.hpp:161
int project_source_body
Definition CadDocument.hpp:346
double helix_height
Definition CadDocument.hpp:321
bool xf_copy
Definition CadDocument.hpp:331
bool cut_keep_upper
Definition CadDocument.hpp:277
double mate_offset
Definition CadDocument.hpp:370
BooleanMode mode
Definition CadDocument.hpp:101
int mate_cs_a
Definition CadDocument.hpp:368
double helix_radius
Definition CadDocument.hpp:319
std::vector< int > loft_profile_refs
Definition CadDocument.hpp:199
Vec3d axis_p2
Definition CadDocument.hpp:290
int up_to_face
Definition CadDocument.hpp:106
std::string name
Definition CadDocument.hpp:42
Vec3d coordsys_x_hint
Definition CadDocument.hpp:303
int plane_axis
Definition CadDocument.hpp:247
double pattern_spacing
Definition CadDocument.hpp:209
int plane_edge2_body
Definition CadDocument.hpp:255
int plane_face_body
Definition CadDocument.hpp:249
double helix_pitch
Definition CadDocument.hpp:320
double draft_angle
Definition CadDocument.hpp:180
double plane_offset
Definition CadDocument.hpp:245
bool pattern_inclusive
Definition CadDocument.hpp:217
bool cut_flip
Definition CadDocument.hpp:276
int revolve_axis
Definition CadDocument.hpp:186
bool bool_keep_tool
Definition CadDocument.hpp:268
double thread_pitch
Definition CadDocument.hpp:158
std::map< std::string, std::string > expr
Definition CadDocument.hpp:228
double plane_angle_tilt
Definition CadDocument.hpp:246
int plane_face
Definition CadDocument.hpp:250
double hole_cbore_depth
Definition CadDocument.hpp:150
std::vector< SketchConstraintDef > constraints
Definition CadDocument.hpp:61
Vec3d xf_translate
Definition CadDocument.hpp:327
int plane_edge_body
Definition CadDocument.hpp:253
bool mirror_keep_original
Definition CadDocument.hpp:284
std::vector< SketchEntity > entities
Definition CadDocument.hpp:58
int axis_plane_b
Definition CadDocument.hpp:295
std::vector< std::vector< std::vector< Vec2d > > > imported_regions
Definition CadDocument.hpp:75
double plane_u_size
Definition CadDocument.hpp:257
bool thicken_flip
Definition CadDocument.hpp:337
double import_scale_x
Definition CadDocument.hpp:90
int sweep_path_ref
Definition CadDocument.hpp:194
int cut_face
Definition CadDocument.hpp:343
double plane_v_size
Definition CadDocument.hpp:258
int sketch_ref
Definition CadDocument.hpp:98
int hole_style
Definition CadDocument.hpp:148
SketchProfile profile
Definition CadDocument.hpp:54
CadFeatureType type
Definition CadDocument.hpp:41
int mate_cs_b
Definition CadDocument.hpp:369
int rib_sketch_ref
Definition CadDocument.hpp:355
int plane_base
Definition CadDocument.hpp:244
double import_scale_y
Definition CadDocument.hpp:91
bool pattern_circular
Definition CadDocument.hpp:207
Vec3d up_to_point
Definition CadDocument.hpp:108
double distance2
Definition CadDocument.hpp:103
int bool_tool_body
Definition CadDocument.hpp:267
int plane_face2_body
Definition CadDocument.hpp:251
double xf_angle_deg
Definition CadDocument.hpp:330
int bool_target_face
Definition CadDocument.hpp:270
double hole_cbore_diameter
Definition CadDocument.hpp:149
double hole_csink_angle
Definition CadDocument.hpp:152
int plane_edge
Definition CadDocument.hpp:254
FaceGroup face_group
Definition CadDocument.hpp:117
int coordsys_edge
Definition CadDocument.hpp:302
int rib_entity
Definition CadDocument.hpp:356
int pattern_curve_entity
Definition CadDocument.hpp:223
int draft_face
Definition CadDocument.hpp:179
double thread_height
Definition CadDocument.hpp:159
double shell_thickness
Definition CadDocument.hpp:175
ExtrudeEnd extrude_end
Definition CadDocument.hpp:102
int axis_edge
Definition CadDocument.hpp:293

References axis_body, axis_edge, axis_face, axis_p1, axis_p2, axis_plane_a, axis_plane_b, axis_type, bool_keep_tool, bool_target_face, bool_tolerance, bool_tool_body, bool_tool_face, Slic3r::brep_from_string(), constraints, coordsys_body, coordsys_edge, coordsys_face, coordsys_face_edges, coordsys_face_kind, coordsys_point, coordsys_type, coordsys_x_hint, cut_face, cut_face_body, cut_flip, cut_keep_lower, cut_keep_upper, cut_offset, delete_faces, distance, distance2, draft_angle, draft_face, dressup_edge, dressup_edges, dressup_size, enabled, entities, entity_constraints, expr, extrude_end, extrude_src_face, face_group, flip, height, helix_height, helix_left_handed, helix_pitch, helix_radius, helix_taper_deg, hole_cbore_depth, hole_cbore_diameter, hole_csink_angle, hole_csink_diameter, hole_depth, hole_diameter, hole_standard, hole_style, hole_through, hole_x, hole_y, import_face_body, import_offset, import_on_face, import_scale_x, import_scale_y, imported_regions, imported_solid, loft_profile_refs, loft_ruled, mate_angle, mate_cs_a, mate_cs_b, mate_flip, mate_kind, mate_offset, mirror_keep_original, mode, name, pattern_angle, pattern_circular, pattern_count, pattern_curve_entity, pattern_curve_sketch, pattern_dir, pattern_inclusive, pattern_spacing, plane, plane_angle_tilt, plane_axis, plane_base, plane_edge, plane_edge2, plane_edge2_body, plane_edge_body, plane_face, plane_face2, plane_face2_body, plane_face_body, plane_offset, plane_type, plane_u_size, plane_v_size, profile, project_edges, project_face, project_source_body, radius, revolve_angle, revolve_axis, revolve_axis_entity, rib_depth, rib_entity, rib_sketch_ref, rib_thickness, shape, shell_face, shell_thickness, sketch_ref, sweep_path_ref, symmetric, taper_deg, target_body, text_font, text_height, text_string, thicken_face, thicken_flip, thicken_thickness, thread_depth, thread_height, thread_internal, thread_major_nominal, thread_pitch, thread_radius, thread_x, thread_y, type, up_to_face, up_to_point, width, xf_angle_deg, xf_axis, xf_copy, xf_pivot, and xf_translate.

Here is the call graph for this function:

◆ load_flat_v4()

template<class Archive>
void Slic3r::CadFeature::load_flat_v4 ( Archive & ar)
inline
466 {
467 std::string brep;
484 brep,
500 expr,
504 }

References axis_body, axis_edge, axis_face, axis_p1, axis_p2, axis_plane_a, axis_plane_b, axis_type, bool_keep_tool, bool_target_face, bool_tolerance, bool_tool_body, bool_tool_face, Slic3r::brep_from_string(), constraints, coordsys_body, coordsys_edge, coordsys_face, coordsys_face_edges, coordsys_face_kind, coordsys_point, coordsys_type, coordsys_x_hint, cut_face, cut_face_body, cut_flip, cut_keep_lower, cut_keep_upper, cut_offset, delete_faces, distance, distance2, draft_angle, draft_face, dressup_edge, dressup_size, enabled, entities, entity_constraints, expr, extrude_end, extrude_src_face, face_group, flip, height, helix_height, helix_left_handed, helix_pitch, helix_radius, helix_taper_deg, hole_cbore_depth, hole_cbore_diameter, hole_csink_angle, hole_csink_diameter, hole_depth, hole_diameter, hole_standard, hole_style, hole_through, hole_x, hole_y, import_face_body, import_offset, import_on_face, import_scale_x, import_scale_y, imported_regions, imported_solid, loft_profile_refs, loft_ruled, mate_angle, mate_cs_a, mate_cs_b, mate_flip, mate_kind, mate_offset, mirror_keep_original, mode, name, pattern_angle, pattern_circular, pattern_count, pattern_curve_entity, pattern_curve_sketch, pattern_dir, pattern_spacing, plane, plane_angle_tilt, plane_axis, plane_base, plane_edge, plane_edge2, plane_edge2_body, plane_edge_body, plane_face, plane_face2, plane_face2_body, plane_face_body, plane_offset, plane_type, plane_u_size, plane_v_size, profile, project_edges, project_face, project_source_body, radius, revolve_angle, revolve_axis, rib_depth, rib_entity, rib_sketch_ref, rib_thickness, shape, shell_face, shell_thickness, sketch_ref, sweep_path_ref, symmetric, taper_deg, target_body, thicken_face, thicken_flip, thicken_thickness, thread_depth, thread_height, thread_internal, thread_pitch, thread_radius, thread_x, thread_y, type, up_to_face, up_to_point, width, xf_angle_deg, xf_axis, xf_copy, xf_pivot, and xf_translate.

Here is the call graph for this function:

◆ save()

template<class Archive>
void Slic3r::CadFeature::save ( Archive & ar) const
inline
375 {
376 std::string brep = (type == CadFeatureType::Import) ? brep_to_string(imported_solid) : std::string();
393 brep,
409 expr,
416 }
std::string brep_to_string(const TopoDS_Shape &s)
Definition CadDocument.cpp:4403
@ Import
Definition CadDocument.hpp:26

References axis_body, axis_edge, axis_face, axis_p1, axis_p2, axis_plane_a, axis_plane_b, axis_type, bool_keep_tool, bool_target_face, bool_tolerance, bool_tool_body, bool_tool_face, Slic3r::brep_to_string(), constraints, coordsys_body, coordsys_edge, coordsys_face, coordsys_face_edges, coordsys_face_kind, coordsys_point, coordsys_type, coordsys_x_hint, cut_face, cut_face_body, cut_flip, cut_keep_lower, cut_keep_upper, cut_offset, delete_faces, distance, distance2, draft_angle, draft_face, dressup_edge, dressup_edges, dressup_size, enabled, entities, entity_constraints, expr, extrude_end, extrude_src_face, face_group, flip, height, helix_height, helix_left_handed, helix_pitch, helix_radius, helix_taper_deg, hole_cbore_depth, hole_cbore_diameter, hole_csink_angle, hole_csink_diameter, hole_depth, hole_diameter, hole_standard, hole_style, hole_through, hole_x, hole_y, Slic3r::Import, import_face_body, import_offset, import_on_face, import_scale_x, import_scale_y, imported_regions, imported_solid, loft_profile_refs, loft_ruled, mate_angle, mate_cs_a, mate_cs_b, mate_flip, mate_kind, mate_offset, mirror_keep_original, mode, name, pattern_angle, pattern_circular, pattern_count, pattern_curve_entity, pattern_curve_sketch, pattern_dir, pattern_inclusive, pattern_spacing, plane, plane_angle_tilt, plane_axis, plane_base, plane_edge, plane_edge2, plane_edge2_body, plane_edge_body, plane_face, plane_face2, plane_face2_body, plane_face_body, plane_offset, plane_type, plane_u_size, plane_v_size, profile, project_edges, project_face, project_source_body, radius, revolve_angle, revolve_axis, revolve_axis_entity, rib_depth, rib_entity, rib_sketch_ref, rib_thickness, shape, shell_face, shell_thickness, sketch_ref, sweep_path_ref, symmetric, taper_deg, target_body, text_font, text_height, text_string, thicken_face, thicken_flip, thicken_thickness, thread_depth, thread_height, thread_internal, thread_major_nominal, thread_pitch, thread_radius, thread_x, thread_y, type, up_to_face, up_to_point, width, xf_angle_deg, xf_axis, xf_copy, xf_pivot, and xf_translate.

Here is the call graph for this function:

Member Data Documentation

◆ axis_body

int Slic3r::CadFeature::axis_body {-1}
291{-1};

Referenced by load(), load_flat_v4(), and save().

◆ axis_edge

int Slic3r::CadFeature::axis_edge {-1}
293{-1};

Referenced by load(), load_flat_v4(), and save().

◆ axis_face

int Slic3r::CadFeature::axis_face {-1}
292{-1};

Referenced by load(), load_flat_v4(), and save().

◆ axis_p1

Vec3d Slic3r::CadFeature::axis_p1 {0, 0, 0}
289{0, 0, 0};

Referenced by load(), load_flat_v4(), and save().

◆ axis_p2

Vec3d Slic3r::CadFeature::axis_p2 {0, 0, 10}
290{0, 0, 10};

Referenced by load(), load_flat_v4(), and save().

◆ axis_plane_a

int Slic3r::CadFeature::axis_plane_a {-1}
294{-1};

Referenced by load(), load_flat_v4(), and save().

◆ axis_plane_b

int Slic3r::CadFeature::axis_plane_b {-1}
295{-1};

Referenced by load(), load_flat_v4(), and save().

◆ axis_type

AxisType Slic3r::CadFeature::axis_type {AxisType::TwoPoints}
@ TwoPoints
Definition CadDocument.hpp:29

Referenced by load(), load_flat_v4(), and save().

◆ body_ref_ids

std::vector<BodyId> Slic3r::CadFeature::body_ref_ids

◆ body_refs_pending

bool Slic3r::CadFeature::body_refs_pending {false}
238{false};

◆ bool_keep_tool

bool Slic3r::CadFeature::bool_keep_tool {false}
268{false};

Referenced by load(), load_flat_v4(), and save().

◆ bool_target_face

int Slic3r::CadFeature::bool_target_face {-1}
270{-1}; // global face id on the target body to mate (-1 = none)

Referenced by load(), load_flat_v4(), and save().

◆ bool_tolerance

double Slic3r::CadFeature::bool_tolerance {0.0}
269{0.0};

Referenced by load(), load_flat_v4(), and save().

◆ bool_tool_body

int Slic3r::CadFeature::bool_tool_body {-1}
267{-1};

Referenced by load(), load_flat_v4(), and save().

◆ bool_tool_face

int Slic3r::CadFeature::bool_tool_face {-1}
271{-1}; // global face id on the tool body to mate (-1 = none)

Referenced by load(), load_flat_v4(), and save().

◆ constraints

std::vector<SketchConstraintDef> Slic3r::CadFeature::constraints

◆ coordsys_body

int Slic3r::CadFeature::coordsys_body {-1}

◆ coordsys_edge

int Slic3r::CadFeature::coordsys_edge {-1}
302{-1};

Referenced by load(), load_flat_v4(), and save().

◆ coordsys_face

int Slic3r::CadFeature::coordsys_face {-1}
301{-1};

Referenced by load(), load_flat_v4(), and save().

◆ coordsys_face_edges

int Slic3r::CadFeature::coordsys_face_edges {-1}
314{-1}; // number of edges bounding the face

Referenced by load(), load_flat_v4(), and save().

◆ coordsys_face_kind

int Slic3r::CadFeature::coordsys_face_kind {-1}
313{-1}; // GeomAbs_SurfaceType as int

Referenced by load(), load_flat_v4(), and save().

◆ coordsys_point

Vec3d Slic3r::CadFeature::coordsys_point {0, 0, 0}
299{0, 0, 0};

Referenced by load(), load_flat_v4(), and save().

◆ coordsys_type

CoordSysType Slic3r::CadFeature::coordsys_type {CoordSysType::PointWorld}
@ PointWorld
Definition CadDocument.hpp:30

Referenced by load(), load_flat_v4(), and save().

◆ coordsys_x_hint

Vec3d Slic3r::CadFeature::coordsys_x_hint {1, 0, 0}
303{1, 0, 0};

Referenced by load(), load_flat_v4(), and save().

◆ cut_face

int Slic3r::CadFeature::cut_face {-1}
343{-1}; // global face id to cut along; -1 = use `plane`

Referenced by load(), load_flat_v4(), and save().

◆ cut_face_body

int Slic3r::CadFeature::cut_face_body {-1}
342{-1}; // body owning the face; -1 = the target body

Referenced by load(), load_flat_v4(), and save().

◆ cut_flip

bool Slic3r::CadFeature::cut_flip {false}
276{false}; // flip the normal => swaps which side is "upper"

Referenced by load(), load_flat_v4(), and save().

◆ cut_keep_lower

bool Slic3r::CadFeature::cut_keep_lower {false}
278{false}; // keep the -normal half (both => split into two bodies)

Referenced by load(), load_flat_v4(), and save().

◆ cut_keep_upper

bool Slic3r::CadFeature::cut_keep_upper {true}
277{true}; // keep the +normal half

Referenced by load(), load_flat_v4(), and save().

◆ cut_offset

double Slic3r::CadFeature::cut_offset {0.0}
275{0.0}; // offset along the cut-plane normal (mm)

Referenced by load(), load_flat_v4(), and save().

◆ delete_faces

std::vector<int> Slic3r::CadFeature::delete_faces

Referenced by load(), load_flat_v4(), and save().

◆ distance

double Slic3r::CadFeature::distance {10}

◆ distance2

double Slic3r::CadFeature::distance2 {0}
103{0}; // second-side depth for TwoSided

Referenced by Slic3r::GUI::anonymous_namespace{McpControl.cpp}::action_extrude(), load(), load_flat_v4(), and save().

◆ draft_angle

double Slic3r::CadFeature::draft_angle {5}
180{5}; // draft angle in degrees (signed: + leans the face inward)

Referenced by load(), load_flat_v4(), and save().

◆ draft_face

int Slic3r::CadFeature::draft_face {-1}
179{-1}; // global face id to draft; -1 = none

Referenced by load(), load_flat_v4(), and save().

◆ dressup_edge

int Slic3r::CadFeature::dressup_edge {-1}
118{-1}; // global edge id for edge-targeted fillet/chamfer; -1 = use face_group

Referenced by dressup_edge_ids(), load(), load_flat_v4(), and save().

◆ dressup_edges

std::vector<int> Slic3r::CadFeature::dressup_edges

Referenced by dressup_edge_ids(), load(), and save().

◆ dressup_size

double Slic3r::CadFeature::dressup_size {1.0}
116{1.0}; // fillet radius or chamfer distance

Referenced by load(), load_flat_v4(), and save().

◆ enabled

◆ entities

◆ entity_constraints

◆ expr

◆ extrude_end

◆ extrude_src_face

int Slic3r::CadFeature::extrude_src_face {-1}
107{-1}; // global face id on the current body to extrude as a profile; -1 = use sketch wire

Referenced by load(), load_flat_v4(), and save().

◆ face_group

FaceGroup Slic3r::CadFeature::face_group {FaceGroup::All}
@ All
Definition GeometryEngine.hpp:16

Referenced by load(), load_flat_v4(), and save().

◆ flip

bool Slic3r::CadFeature::flip {false}
105{false}; // reverse the extrude direction (negate plane normal)

Referenced by Slic3r::GUI::anonymous_namespace{McpControl.cpp}::action_extrude(), load(), load_flat_v4(), and save().

◆ height

◆ helix_height

double Slic3r::CadFeature::helix_height {20}
321{20};

Referenced by load(), load_flat_v4(), and save().

◆ helix_left_handed

bool Slic3r::CadFeature::helix_left_handed {false}
322{false};

Referenced by load(), load_flat_v4(), and save().

◆ helix_pitch

double Slic3r::CadFeature::helix_pitch {5}
320{5};

Referenced by load(), load_flat_v4(), and save().

◆ helix_radius

double Slic3r::CadFeature::helix_radius {10}
319{10};

Referenced by load(), load_flat_v4(), and save().

◆ helix_taper_deg

double Slic3r::CadFeature::helix_taper_deg {0}
323{0};

Referenced by load(), load_flat_v4(), and save().

◆ hole_cbore_depth

double Slic3r::CadFeature::hole_cbore_depth {0}
150{0}; // counterbore depth from the entry face (mm), style==1

Referenced by load(), load_flat_v4(), and save().

◆ hole_cbore_diameter

double Slic3r::CadFeature::hole_cbore_diameter {0}
149{0}; // counterbore cylinder diameter (mm), style==1

Referenced by load(), load_flat_v4(), and save().

◆ hole_csink_angle

double Slic3r::CadFeature::hole_csink_angle {90}
152{90}; // countersink included angle (degrees), style==2

Referenced by load(), load_flat_v4(), and save().

◆ hole_csink_diameter

double Slic3r::CadFeature::hole_csink_diameter {0}
151{0}; // countersink major diameter at entry face (mm), style==2

Referenced by load(), load_flat_v4(), and save().

◆ hole_depth

double Slic3r::CadFeature::hole_depth {10}
141{10};

Referenced by load(), load_flat_v4(), and save().

◆ hole_diameter

double Slic3r::CadFeature::hole_diameter {5}
140{5};

Referenced by load(), load_flat_v4(), and save().

◆ hole_standard

std::string Slic3r::CadFeature::hole_standard

Referenced by load(), load_flat_v4(), and save().

◆ hole_style

int Slic3r::CadFeature::hole_style {0}
148{0};

Referenced by load(), load_flat_v4(), and save().

◆ hole_through

bool Slic3r::CadFeature::hole_through {true}
142{true}; // true = symmetric through-cut, ignores hole_depth

Referenced by load(), load_flat_v4(), and save().

◆ hole_x

double Slic3r::CadFeature::hole_x {0}
143{0}; // position on the plane (plane u/x axis)

Referenced by load(), load_flat_v4(), and save().

◆ hole_y

double Slic3r::CadFeature::hole_y {0}
144{0}; // position on the plane (plane v/y axis)

Referenced by load(), load_flat_v4(), and save().

◆ import_face_body

int Slic3r::CadFeature::import_face_body {-1}
95{-1};

Referenced by load(), load_flat_v4(), and save().

◆ import_offset

Vec2d Slic3r::CadFeature::import_offset {0, 0}

◆ import_on_face

bool Slic3r::CadFeature::import_on_face {false}
94{false};

Referenced by load(), load_flat_v4(), and save().

◆ import_scale_x

double Slic3r::CadFeature::import_scale_x {1.0}

◆ import_scale_y

double Slic3r::CadFeature::import_scale_y {1.0}

◆ imported_regions

std::vector<std::vector<std::vector<Vec2d> > > Slic3r::CadFeature::imported_regions

◆ imported_solid

TopoDS_Shape Slic3r::CadFeature::imported_solid

Referenced by load(), load_flat_v4(), and save().

◆ loft_profile_refs

std::vector<int> Slic3r::CadFeature::loft_profile_refs

Referenced by load(), load_flat_v4(), and save().

◆ loft_ruled

bool Slic3r::CadFeature::loft_ruled {false}
200{false};

Referenced by load(), load_flat_v4(), and save().

◆ mate_angle

double Slic3r::CadFeature::mate_angle {0}
371{0}; // rotation about A's z, degrees

Referenced by load(), load_flat_v4(), save(), and Slic3r::GUI::DesignPanel::show_mate_ghost().

◆ mate_cs_a

int Slic3r::CadFeature::mate_cs_a {-1}
368{-1}; // feature index of the FIXED CoordSys (mate connector A)

Referenced by load(), load_flat_v4(), Slic3r::GUI::DesignPanel::refresh_mate_connectors(), save(), and Slic3r::GUI::DesignPanel::show_mate_ghost().

◆ mate_cs_b

int Slic3r::CadFeature::mate_cs_b {-1}
369{-1}; // feature index of the CoordSys on the body that MOVES

Referenced by load(), load_flat_v4(), Slic3r::GUI::DesignPanel::refresh_mate_connectors(), save(), and Slic3r::GUI::DesignPanel::show_mate_ghost().

◆ mate_flip

bool Slic3r::CadFeature::mate_flip {false}
372{false}; // oppose the two z axes (face-to-face)

Referenced by load(), load_flat_v4(), save(), and Slic3r::GUI::DesignPanel::show_mate_ghost().

◆ mate_kind

int Slic3r::CadFeature::mate_kind {0}

◆ mate_offset

double Slic3r::CadFeature::mate_offset {0}
370{0}; // translation along A's z, mm

Referenced by load(), load_flat_v4(), save(), and Slic3r::GUI::DesignPanel::show_mate_ghost().

◆ mirror_keep_original

bool Slic3r::CadFeature::mirror_keep_original {true}
284{true};

Referenced by load(), load_flat_v4(), and save().

◆ mode

BooleanMode Slic3r::CadFeature::mode {BooleanMode::New}

◆ name

◆ pattern_angle

double Slic3r::CadFeature::pattern_angle {360}
211{360}; // circular total angle (degrees)

Referenced by load(), load_flat_v4(), and save().

◆ pattern_circular

bool Slic3r::CadFeature::pattern_circular {false}
207{false};

Referenced by load(), load_flat_v4(), and save().

◆ pattern_count

int Slic3r::CadFeature::pattern_count {3}
208{3}; // total instances incl. the seed (>=1)

Referenced by load(), load_flat_v4(), and save().

◆ pattern_curve_entity

int Slic3r::CadFeature::pattern_curve_entity {-1}
223{-1}; // entity index of the guide curve within that sketch

Referenced by load(), load_flat_v4(), and save().

◆ pattern_curve_sketch

int Slic3r::CadFeature::pattern_curve_sketch {-1}
222{-1}; // feature index of the Sketch holding the guide curve

Referenced by load(), load_flat_v4(), and save().

◆ pattern_dir

int Slic3r::CadFeature::pattern_dir {0}
210{0}; // linear direction: 0 = plane X, 1 = plane Y

Referenced by load(), load_flat_v4(), and save().

◆ pattern_inclusive

bool Slic3r::CadFeature::pattern_inclusive {false}
217{false};

Referenced by load(), and save().

◆ pattern_spacing

double Slic3r::CadFeature::pattern_spacing {20}
209{20}; // linear step (mm)

Referenced by load(), load_flat_v4(), and save().

◆ plane

◆ plane_angle_tilt

double Slic3r::CadFeature::plane_angle_tilt {0}
246{0}; // degrees (named *_tilt to avoid clash w/ revolve)

Referenced by load(), load_flat_v4(), and save().

◆ plane_axis

int Slic3r::CadFeature::plane_axis {0}
247{0}; // tilt axis: 0 = base X, 1 = base Y

Referenced by load(), load_flat_v4(), and save().

◆ plane_base

int Slic3r::CadFeature::plane_base {0}
244{0};

Referenced by load(), load_flat_v4(), and save().

◆ plane_edge

int Slic3r::CadFeature::plane_edge {-1}
254{-1};

Referenced by load(), load_flat_v4(), and save().

◆ plane_edge2

int Slic3r::CadFeature::plane_edge2 {-1}
256{-1};

Referenced by load(), load_flat_v4(), and save().

◆ plane_edge2_body

int Slic3r::CadFeature::plane_edge2_body {-1}
255{-1};

Referenced by load(), load_flat_v4(), and save().

◆ plane_edge_body

int Slic3r::CadFeature::plane_edge_body {-1}
253{-1};

Referenced by load(), load_flat_v4(), and save().

◆ plane_face

int Slic3r::CadFeature::plane_face {-1}
250{-1};

Referenced by load(), load_flat_v4(), and save().

◆ plane_face2

int Slic3r::CadFeature::plane_face2 {-1}
252{-1};

Referenced by load(), load_flat_v4(), and save().

◆ plane_face2_body

int Slic3r::CadFeature::plane_face2_body {-1}
251{-1};

Referenced by load(), load_flat_v4(), and save().

◆ plane_face_body

int Slic3r::CadFeature::plane_face_body {-1}
249{-1};

Referenced by load(), load_flat_v4(), and save().

◆ plane_offset

double Slic3r::CadFeature::plane_offset {20}
245{20};

Referenced by load(), load_flat_v4(), and save().

◆ plane_type

PlaneType Slic3r::CadFeature::plane_type {PlaneType::Offset}
@ Offset
Definition CadDocument.hpp:28

Referenced by load(), load_flat_v4(), and save().

◆ plane_u_size

double Slic3r::CadFeature::plane_u_size {60}
257{60};

Referenced by load(), load_flat_v4(), and save().

◆ plane_v_size

double Slic3r::CadFeature::plane_v_size {60}
258{60};

Referenced by load(), load_flat_v4(), and save().

◆ profile

◆ project_edges

std::vector<int> Slic3r::CadFeature::project_edges

Referenced by load(), load_flat_v4(), and save().

◆ project_face

int Slic3r::CadFeature::project_face {-1}
348{-1}; // if project_edges empty, project every edge of this face

Referenced by load(), load_flat_v4(), and save().

◆ project_source_body

int Slic3r::CadFeature::project_source_body {-1}
346{-1}; // body owning the edges; -1 = last body

Referenced by load(), load_flat_v4(), and save().

◆ radius

◆ revolve_angle

double Slic3r::CadFeature::revolve_angle {360}
185{360}; // sweep angle in degrees (1..360)

Referenced by load(), load_flat_v4(), and save().

◆ revolve_axis

int Slic3r::CadFeature::revolve_axis {0}
186{0}; // 0 = plane X, 1 = plane Y

Referenced by load(), load_flat_v4(), and save().

◆ revolve_axis_entity

int Slic3r::CadFeature::revolve_axis_entity {-1}
189{-1};

Referenced by load(), and save().

◆ rib_depth

double Slic3r::CadFeature::rib_depth {10}
358{10}; // extrude distance along the sketch-plane normal (mm)

Referenced by load(), load_flat_v4(), and save().

◆ rib_entity

int Slic3r::CadFeature::rib_entity {-1}
356{-1}; // index of the open Line entity within that sketch

Referenced by load(), load_flat_v4(), and save().

◆ rib_sketch_ref

int Slic3r::CadFeature::rib_sketch_ref {-1}
355{-1}; // feature index of the Sketch holding the profile

Referenced by load(), load_flat_v4(), Slic3r::CadDocument::remove_feature(), and save().

◆ rib_thickness

double Slic3r::CadFeature::rib_thickness {2}
357{2}; // wall thickness (mm), centred on the line

Referenced by load(), load_flat_v4(), and save().

◆ shape

◆ shell_face

int Slic3r::CadFeature::shell_face {-1}
176{-1}; // global face id to remove (open the shell); -1 = none

Referenced by load(), load_flat_v4(), and save().

◆ shell_thickness

double Slic3r::CadFeature::shell_thickness {2}
175{2}; // wall thickness (inward offset)

Referenced by load(), load_flat_v4(), and save().

◆ sketch_ref

int Slic3r::CadFeature::sketch_ref {-1}
98{-1}; // index into features[] of the consumed sketch

Referenced by load(), load_flat_v4(), Slic3r::CadDocument::remove_feature(), and save().

◆ sweep_path_ref

int Slic3r::CadFeature::sweep_path_ref {-1}
194{-1}; // index into features[] of the path Sketch

Referenced by load(), load_flat_v4(), Slic3r::CadDocument::remove_feature(), and save().

◆ symmetric

bool Slic3r::CadFeature::symmetric {false}

◆ taper_deg

double Slic3r::CadFeature::taper_deg {0}

◆ target_body

int Slic3r::CadFeature::target_body {-1}
113{-1};

Referenced by load(), load_flat_v4(), and save().

◆ text_font

std::string Slic3r::CadFeature::text_font

Referenced by load(), and save().

◆ text_height

double Slic3r::CadFeature::text_height {0.0}
131{0.0};

Referenced by load(), and save().

◆ text_string

std::string Slic3r::CadFeature::text_string

Referenced by is_text(), load(), and save().

◆ thicken_face

int Slic3r::CadFeature::thicken_face {-1}
335{-1}; // global face id on the target body; -1 = invalid

Referenced by load(), load_flat_v4(), and save().

◆ thicken_flip

bool Slic3r::CadFeature::thicken_flip {false}
337{false}; // true: offset against the face normal

Referenced by load(), load_flat_v4(), and save().

◆ thicken_thickness

double Slic3r::CadFeature::thicken_thickness {2}
336{2}; // wall thickness (always used as |value|)

Referenced by load(), load_flat_v4(), and save().

◆ thread_depth

double Slic3r::CadFeature::thread_depth {1}
160{1}; // radial depth of the thread profile

Referenced by load(), load_flat_v4(), and save().

◆ thread_height

double Slic3r::CadFeature::thread_height {10}
159{10}; // total axial length

Referenced by load(), load_flat_v4(), and save().

◆ thread_internal

bool Slic3r::CadFeature::thread_internal {false}
161{false}; // false = external: the thread goes on the target body

Referenced by load(), load_flat_v4(), and save().

◆ thread_major_nominal

bool Slic3r::CadFeature::thread_major_nominal {false}
170{false};

Referenced by load(), and save().

◆ thread_pitch

double Slic3r::CadFeature::thread_pitch {2}
158{2}; // axial advance per turn

Referenced by load(), load_flat_v4(), and save().

◆ thread_radius

double Slic3r::CadFeature::thread_radius {5}
156{5}; // MAJOR (nominal) radius when thread_major_nominal,

Referenced by load(), load_flat_v4(), and save().

◆ thread_x

double Slic3r::CadFeature::thread_x {0}
171{0}; // axis position on the plane (u/x axis)

Referenced by load(), load_flat_v4(), and save().

◆ thread_y

double Slic3r::CadFeature::thread_y {0}
172{0}; // axis position on the plane (v/y axis)

Referenced by load(), load_flat_v4(), and save().

◆ type

◆ up_to_face

int Slic3r::CadFeature::up_to_face {-1}
106{-1}; // target solid-face id for UpToFace (C4-part2)

Referenced by Slic3r::GUI::anonymous_namespace{McpControl.cpp}::action_extrude(), load(), load_flat_v4(), and save().

◆ up_to_point

Vec3d Slic3r::CadFeature::up_to_point {0,0,0}
108{0,0,0}; // target for UpToVertex (C4-part2)

Referenced by load(), load_flat_v4(), and save().

◆ width

◆ xf_angle_deg

double Slic3r::CadFeature::xf_angle_deg {0}
330{0};

Referenced by load(), load_flat_v4(), and save().

◆ xf_axis

Vec3d Slic3r::CadFeature::xf_axis {0, 0, 1}
328{0, 0, 1};

Referenced by load(), load_flat_v4(), and save().

◆ xf_copy

bool Slic3r::CadFeature::xf_copy {false}
331{false}; // true: keep the original, append the moved copy as a new body

Referenced by load(), load_flat_v4(), and save().

◆ xf_pivot

Vec3d Slic3r::CadFeature::xf_pivot {0, 0, 0}
329{0, 0, 0};

Referenced by load(), load_flat_v4(), and save().

◆ xf_translate

Vec3d Slic3r::CadFeature::xf_translate {0, 0, 0}
327{0, 0, 0};

Referenced by load(), load_flat_v4(), and save().


The documentation for this struct was generated from the following file:
  • /home/runner/work/OrcaSlicer/OrcaSlicer/src/libslic3r/CAD/CadDocument.hpp