15 #ifndef _HUTILITYPMI_H
16 #define _HUTILITYPMI_H
50 FeatureControlFrameType,
103 namespace ZoneModifier
111 MaximumMaterialCondition,
112 LeastMaterialCondition,
113 RegardlessOfFeatureSize,
115 ProjectedToleranceZone,
124 namespace DatumModifier
132 MaximumMaterialCondition,
133 LeastMaterialCondition,
134 RegardlessOfFeatureSize
141 namespace DiameterModifier
211 namespace Applicability
258 class TextAttributes;
276 void Set(
Frame const & that);
280 unsigned int GetPolylineCount()
const;
287 void GetPolylines(
unsigned int & out_count,
Polyline out_polylines[])
const;
292 void SetPolylines(
unsigned int in_count,
Polyline const in_polylines[]);
295 PMII::PrivateImpl * impl_;
308 void Set(
Drawing const & that);
312 unsigned int GetPolygonCount()
const;
319 void GetPolygons(
unsigned int & out_count,
Polygon out_polygons[])
const;
324 void SetPolygons(
unsigned int in_count,
Polygon const in_polygons[]);
327 PMII::PrivateImpl * impl_;
349 void GetXComponent(
Point & out_component)
const;
351 void GetXComponent(
float & out_x,
float & out_y,
float & out_z)
const;
353 void SetXComponent(
Point const & in_component);
355 void SetXComponent(
float in_x,
float in_y,
float in_z);
358 void GetYComponent(
Point & out_component)
const;
360 void GetYComponent(
float & out_x,
float & out_y,
float & out_z)
const;
362 void SetYComponent(
Point const & in_component);
364 void SetYComponent(
float in_x,
float in_y,
float in_z);
367 void GetZComponent(
Point & out_component)
const;
369 void GetZComponent(
float & out_x,
float & out_y,
float & out_z)
const;
371 void SetZComponent(
Point const & in_component);
373 void SetZComponent(
float in_x,
float in_y,
float in_z);
376 void GetOriginComponent(
Point & out_component)
const;
378 void GetOriginComponent(
float & out_x,
float & out_y,
float & out_z)
const;
380 void SetOriginComponent(
Point const & in_component);
382 void SetOriginComponent(
float in_x,
float in_y,
float in_z);
385 void GetMatrix(
float out_matrix[16])
const;
387 void SetMatrix(
float const in_matrix[16]);
390 PMII::PrivateImpl * impl_;
408 void GetRGBColor(
RGBColor & out_color)
const;
410 void GetRGBColor(
float & out_r,
float & out_g,
float & out_b)
const;
412 void SetRGBColor(
RGBColor const & in_color);
414 void SetRGBColor(
float const in_r,
float const in_g,
float const in_b);
417 void GetLinePattern(
char out_pattern[1024])
const;
419 void SetLinePattern(
char const in_pattern[1024]);
422 unsigned int GetPointCount()
const;
429 void GetPoints(
unsigned int & out_count,
Point out_points[])
const;
436 void GetPoints(
unsigned int & out_count,
float out_points[])
const;
441 void SetPoints(
unsigned int in_count,
Point const in_points[]);
446 void SetPoints(
unsigned int in_count,
float const in_points[]);
449 PMII::PrivateImpl * impl_;
462 void Set(
Polygon const & that);
466 void GetRGBColor(
RGBColor & out_color)
const;
468 void GetRGBColor(
float & out_r,
float & out_g,
float & out_b)
const;
470 void SetRGBColor(
RGBColor const & in_color);
472 void SetRGBColor(
float const in_r,
float const in_g,
float const in_b);
475 unsigned int GetPointCount()
const;
482 void GetPoints(
unsigned int & out_count,
Point out_points[])
const;
489 void GetPoints(
unsigned int & out_count,
float out_points[])
const;
494 void SetPoints(
unsigned int in_count,
Point const in_points[]);
499 void SetPoints(
unsigned int in_count,
float const in_points[]);
502 PMII::PrivateImpl * impl_;
519 void GetInsertionPoint(
Point & out_point)
const;
521 void GetInsertionPoint(
float & out_x,
float & out_y,
float & out_z)
const;
523 void SetInsertionPoint(
Point const & in_point);
525 void SetInsertionPoint(
float in_x,
float in_y,
float in_z);
528 void GetFontSize(
float & out_size)
const;
530 void SetFontSize(
float const in_size);
533 void GetFontName(
char * out_font_name)
const;
535 void SetFontName(
char const * in_font_name);
538 void GetOrientation(
Orientation & out_orientation)
const;
540 void SetOrientation(
Orientation const & in_orientation);
543 void GetRGBColor(
RGBColor & out_color)
const;
545 void GetRGBColor(
float & out_r,
float & out_g,
float & out_b)
const;
547 void SetRGBColor(
RGBColor const & in_color);
549 void SetRGBColor(
float in_r,
float in_g,
float in_b);
555 bool IsItalic()
const;
557 bool IsUnderlined()
const;
559 bool IsStrikedThrough()
const;
561 bool IsOverlined()
const;
563 bool IsStreched()
const;
565 bool IsWired()
const;
567 bool IsFixedWidth()
const;
569 void SetFormat(
char const & in_format);
572 double WidthScale()
const;
574 void SetWidthScale(
const double width_scale);
577 PMII::PrivateImpl * impl_;
590 String(
char const * cstring);
591 String(
wchar_t const * wstring);
592 String(H_WCS
const & wcs);
593 String(H_UTF8
const & utf8);
597 void Set(
String const & in_that);
601 char const * CStr()
const;
603 wchar_t const * WStr()
const;
605 size_t WLength()
const;
607 bool Equals(
String const & in_that)
const;
608 bool operator==(
String const & in_that)
const;
609 bool operator!=(
String const & in_that)
const;
612 PMII::PrivateImpl * impl_;
625 void Set(
Options const & that);
629 void SetDisplayParallelToScreen(
bool const in_parallel =
true);
631 bool IsDisplayParallelToScreen()
const;
634 PMII::PrivateImpl * impl_;
646 class GeometricToleranceEntity;
665 void Set(
Entity const & that);
672 HC_KEY GetSegmentKey()
const;
675 void GetFrame(
Frame & out_frame)
const;
677 void SetFrame(
Frame const & in_frame);
680 unsigned int GetLeaderLineCount()
const;
687 void GetLeaderLines(
unsigned int & out_count,
Polyline out_leader_lines[])
const;
692 void SetLeaderLines(
unsigned int in_count,
Polyline const in_leader_lines[]);
695 unsigned int GetLeaderSymbolCount()
const;
702 void GetLeaderSymbols(
unsigned int & out_count,
Polygon out_leader_symbols[])
const;
707 void SetLeaderSymbols(
unsigned int in_count,
Polygon const * in_leader_symbols);
711 void SetDisplayParallelToScreen(
bool const in_parallel =
true);
713 bool IsDisplayParallelToScreen()
const;
717 void GetDrawing(
Drawing & out_drawing)
const;
719 void SetDrawing(
Drawing const & in_drawing);
723 PMII::PrivateImpl * impl_;
745 Datum::Type GetDatumType()
const;
747 void SetDatumType(Datum::Type
const in_type);
750 unsigned int GetLabelCount()
const;
760 void GetLabels(
unsigned int & out_count,
String out_labels[],
TextAttributes out_text_attributes[])
const;
766 void SetLabels(
unsigned int in_count,
String const in_labels[],
TextAttributes const in_text_attributes[]);
788 Dimension::Type GetDimensionType()
const;
790 void SetDimensionType(Dimension::Type
const in_type);
793 Dimension::SubType GetDimensionSubType()
const;
795 void SetDimensionSubType(Dimension::SubType
const in_sub_type);
798 unsigned int GetStringCount()
const;
808 void GetStrings(
unsigned int & out_count,
String out_strings[],
TextAttributes out_text_attributes[])
const;
814 void SetStrings(
unsigned int in_count,
String const in_strings[],
TextAttributes const in_text_attributes[]);
833 virtual Type GetType()
const {
return PMI::FeatureControlFrameType; };
840 void GetToleranceType(Tolerance::Type & out_tolerance_type,
TextAttributes & out_text_attributes)
const;
845 void SetToleranceType(Tolerance::Type
const in_tolerance_type,
TextAttributes const & in_text_attributes);
852 void GetDiameterModifierType(DiameterModifier::Type & out_diameter_modifier_type,
TextAttributes & out_text_attributes)
const;
857 void SetDiameterModifierType(DiameterModifier::Type
const in_diameter_modifier_type,
TextAttributes const & in_text_attributes);
864 void GetZoneToleranceMagnitude(
String & out_zone_tolerance_magnitude,
TextAttributes & out_text_attributes)
const;
870 void SetZoneToleranceMagnitude(
String const & in_zone_tolerance_magnitude,
TextAttributes const & in_text_attributes);
877 void GetFirstZoneModifierType(ZoneModifier::Type & out_zone_modifier_type,
TextAttributes & out_text_attributes)
const;
883 void SetFirstZoneModifierType(ZoneModifier::Type
const in_zone_modifier_type,
TextAttributes const & in_text_attributes);
890 void GetSecondZoneModifierType(ZoneModifier::Type & out_zone_modifier_type,
TextAttributes & out_text_attributes)
const;
896 void SetSecondZoneModifierType(ZoneModifier::Type
const in_zone_modifier_type,
TextAttributes const & in_text_attributes);
903 void GetProjectedMagnitude(
String & out_projected_magnitude,
TextAttributes & out_text_attributes)
const;
909 void SetProjectedMagnitude(
String const & in_projected_magnitude,
TextAttributes const & in_text_attributes);
912 unsigned int GetDatumReferenceCount()
const;
926 void GetDatumReferences(
unsigned int & out_count,
String out_labels[],
TextAttributes out_label_attributes[],
927 DatumModifier::Type out_modifiers[],
TextAttributes out_modifier_attributes[]);
935 void SetDatumReferences(
unsigned int in_count,
String const in_labels[],
TextAttributes const in_label_attributes[],
936 DatumModifier::Type
const in_modifiers[],
TextAttributes const in_modifier_attributes[]);
958 unsigned int GetStringCount()
const;
968 void GetStrings(
unsigned int & out_count,
String out_strings[],
TextAttributes out_text_attributes[])
const;
974 void SetStrings(
unsigned int in_count,
String const in_strings[],
TextAttributes const in_text_attributes[]);
980 void SetDisplayParallelToScreen(
bool const in_parallel =
true);
984 bool IsDisplayParallelToScreen()
const;
1007 unsigned int GetStringCount()
const;
1017 void GetStrings(
unsigned int & out_count,
String out_strings[],
TextAttributes out_text_attributes[])
const;
1023 void SetStrings(
unsigned int in_count,
String const in_strings[],
TextAttributes const in_text_attributes[]);
1045 Roughness::Obtention::Type GetObtentionType()
const;
1047 void SetObtentionType(Roughness::Obtention::Type
const in_obtention_type);
1050 Roughness::Applicability::Type GetApplicabilityType()
const;
1052 void SetApplicabilityType(Roughness::Applicability::Type
const in_applicability_type);
1055 Roughness::Mode::Type GetModeType()
const;
1057 void SetModeType(Roughness::Mode::Type
const in_mode_type);
1060 unsigned int GetFieldCount()
const;
1070 void GetFields(
unsigned int & out_count,
String out_fields[],
TextAttributes out_text_attributes[])
const;
1076 void SetFields(
unsigned int in_count,
String const in_fields[],
TextAttributes const in_text_attributes[]);
1096 void GetCamera(
Camera & out_camera)
const;
1098 void GetCamera(
Point & out_position,
Point & out_target,
Point & out_up_vector,
float & out_field_width,
float & out_field_height,
1099 char out_projection[128]);
1101 void GetCamera(
float out_position[3],
float out_target[3],
float out_up_vector[3],
float & out_field_width,
float & out_field_height,
1102 char out_projection[128]);
1104 void SetCamera(
Camera const & in_camera);
1106 void SetCamera(
Point const & in_position,
Point const & in_target,
Point const & in_up_vector,
float in_field_width,
1107 float in_field_height,
char const in_projection[128]);
1109 void SetCamera(
float const in_position[3],
float const in_target[3],
float const in_up_vector[3],
float in_field_width,
1110 float in_field_height,
char const in_projection[128]);
1113 void GetFrame(
Frame & out_frame)
const;
1115 void SetFrame(
Frame const & in_frame);
1118 void GetName(
String & out_name)
const;
1120 void SetName(
String const & in_name);
1123 unsigned int GetAssociatedEntityCount()
const;
1130 void GetAssociatedEntities(
unsigned int & out_count,
Entity out_entities[])
const;
1135 void SetAssociatedEntities(
unsigned int in_count,
Entity const in_entities[]);
1138 PMII::PrivateImpl * impl_;
1150 #endif // _HUTILITYPMI_H
Definition: HUtilityPMI.h:656
Definition: HUtilityPMI.h:586
Definition: HUtilityPMI.h:992
virtual Type GetType() const
Definition: HUtilityPMI.h:669
virtual Type GetType() const
Definition: HUtilityPMI.h:785
The HCamera class is the data type of a HOOPS Camera Attribute.
Definition: HUtility.h:543
Definition: HUtilityPMI.h:269
Definition: HDWFMisc.h:22
Definition: HUtilityPMI.h:301
virtual Type GetType() const
Definition: HUtilityPMI.h:1004
virtual Type GetType() const
Definition: HUtilityPMI.h:1042
Definition: HUtilityPMI.h:821
Definition: HUtilityPMI.h:455
Definition: HUtilityPMI.h:397
Definition: HUtilityPMI.h:1030
The HPoint class is the data type of a three-dimensional point.
Definition: HGlobals.h:126
Type
Definition: HUtilityPMI.h:45
Definition: HUtilityPMI.h:338
Definition: HUtilityPMI.h:508
Definition: HUtilityPMI.h:1083
Definition: HDGNHelper.h:450
Definition: HUtilityPMI.h:773
Definition: HUtilityPMI.h:943
Definition: HUtilityPMI.h:730
Definition: HUtilityPMI.h:618
virtual Type GetType() const
Definition: HUtilityPMI.h:833
virtual Type GetType() const
Definition: HUtilityPMI.h:742
virtual Type GetType() const
Definition: HUtilityPMI.h:955