3#if NDEVR_VIEWPORT && NDEVR_MEASURE_MODELS
8 struct CADGeometryWriter;
9 class DXFTableWriteIterator;
16 auto iter = options.
block_data.find(dim.uuid());
40 BlockData data = options.convertToBlock(model);
41 data.
handle = options.handle_manager->getHandleIndex(data.
name);
42 options.handle_manager->setHandleToUUID(model.uuid(), data.
handle);
43 options.handle_manager->setTransfromCoords(data.
handle
44 , options.params.options.units.coordinate_space_unit.get()->matrix() * model.getCompleteTransform());
45 options.block_data.insert({ model.uuid(), data });
50 const BlockData& block = options.block_data.get(model.uuid());
51 options.writer.startBlock(block);
53 DistanceMeasureModel
distance(model);
55 * options.params.options.units.coordinate_space_unit.get()->matrix() * model.getCompleteTransform();
61 data.
handle = options.writer.handleManager()->generateTempHandleIndex();
64 options.writer.addLine(data);
65 options.writer.endBlock(block);
70 return model.isOfType(DistanceMeasureModel::TypeName());
74 DistanceMeasureModel
distance(model);
Definition CADDimensionWriteModifier.h:12
void handleInsert(const Matrix< fltp08 > &, const Model &, uint04, CADGeometryWriter &) final override
Definition CADDimensionWriteModifier.h:77
bool canHandleBlock(const Model &) final override
Definition CADDimensionWriteModifier.h:33
void handleInsert(const Matrix< fltp08 > &parent_transform, const Model &model, uint04 parent_handle, DXFBlockWriter &options) final override
Definition CADDimensionWriteModifier.h:72
ModelIterator::ParseResult handleBlock(const Model &model, DXFBlockWriter &options) final override
Definition CADDimensionWriteModifier.h:48
bool canHandleInsert(const Model &model) final override
Definition CADDimensionWriteModifier.h:68
static void WriteDistance(DXFBlockWriter &options, const Matrix< fltp08 > &transform, const DistanceMeasureModel &dim, uint04 parent_handle)
Definition CADDimensionWriteModifier.h:14
ModelIterator::ParseResult handleBlock(const Model &model, DXFTableWriteIterator &options) final override
Definition CADDimensionWriteModifier.h:38
Definition CADWriteModifier.h:11
Definition DXFBlockWriter.h:368
DXFWriter & writer
Definition DXFBlockWriter.h:372
const Dictionary< UUID, BlockData > & block_data
Definition DXFBlockWriter.h:370
Definition DXFBlockWriter.h:56
void addDimAligned(const DimAlignedData &alignment)
Definition DXFWriter.cpp:1790
void cleanupCADName(String &name)
Definition DXFWriter.cpp:1503
const DynamicPointer< CADHandleManager > & handleManager() const
Definition DXFWriter.h:56
Definition Matrix.hpp:173
Matrix< t_type, t_cols, t_rows > invert() const
Definition Matrix.hpp:649
ParseResult
Definition ModelIterator.h:42
@ e_continue_parsing
Definition ModelIterator.h:43
@ e_do_not_parse_children
Definition ModelIterator.h:44
@ e_by_block
Definition CADEntities.h:44
CADColorInfo GenerateDXFColorInfo(const Model &model, bool is_flat, bool is_vertex)
Definition CADGeometryWriter.h:22
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:120
constexpr t_type distance(const t_vertex &vertex, const LineSegment< t_dims, t_type, t_vertex > &line)
Definition Distance.hpp:250
@ B
Definition BaseValues.hpp:203
@ A
Definition BaseValues.hpp:201
void FillOutData(const Model &model, EntityData &data)
Definition CADGeometryWriter.h:117
Definition CADEntities.h:172
ColorMode mode
Definition CADEntities.h:69
Definition CADGeometryWriter.h:126
Definition CADEntities.h:553
LineSegment< 3, fltp08 > alignment_data
Definition CADEntities.h:558
Vector< 3, fltp08 > text_middle_point
Definition CADEntities.h:517
Vector< 3, fltp08 > definition_point
Definition CADEntities.h:516
String dimension_block_name
Definition CADEntities.h:548
CADColorInfo color_info
Definition CADEntities.h:142
String layer
Definition CADEntities.h:140
uint04 parent_handle
Definition CADEntities.h:135
uint04 handle
Definition CADEntities.h:134
String name
Definition CADEntities.h:167
Definition CADEntities.h:491
LineSegment< 3, fltp08 > line
Definition CADEntities.h:492