LibreCAD
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
lc::operation::Scale Class Reference

#include <entityops.h>

Inheritance diagram for lc::operation::Scale:
Collaboration diagram for lc::operation::Scale:

Public Member Functions

 Scale (const geo::Coordinate &scale_center, const geo::Coordinate &scale_factor)
 
virtual ~Scale ()
 
virtual std::vector
< entity::CADEntity_CSPtr > 
process (const std::shared_ptr< Document > document, std::vector< entity::CADEntity_CSPtr > entities, std::vector< entity::CADEntity_CSPtr > &workingBuffer, std::vector< entity::CADEntity_CSPtr > &removals, const std::vector< Base_SPtr > operationStack)
 
- Public Member Functions inherited from lc::operation::Base
virtual ~Base ()
 

Private Attributes

geo::Coordinate _scale_center
 
geo::Coordinate _scale_factor
 

Detailed Description

Definition at line 217 of file entityops.h.

Constructor & Destructor Documentation

Scale::Scale ( const geo::Coordinate scale_center,
const geo::Coordinate scale_factor 
)

Scale

Definition at line 136 of file entityops.cpp.

136  : Base(), _scale_center(scale_center), _scale_factor(scale_factor) {
137 }
geo::Coordinate _scale_center
Definition: entityops.h:232
geo::Coordinate _scale_factor
Definition: entityops.h:232
Scale::~Scale ( )
virtual

Definition at line 155 of file entityops.cpp.

155  {
156 
157 }

Member Function Documentation

std::vector< entity::CADEntity_CSPtr > Scale::process ( const std::shared_ptr< Document document,
std::vector< entity::CADEntity_CSPtr >  entities,
std::vector< entity::CADEntity_CSPtr > &  workingBuffer,
std::vector< entity::CADEntity_CSPtr > &  removals,
const std::vector< Base_SPtr >  operationStack 
)
virtual

Implements lc::operation::Base.

Definition at line 139 of file entityops.cpp.

144  {
145  std::vector<entity::CADEntity_CSPtr> newQueue;
146 
147  for (auto entity : entitySet) {
148  auto e = entity->scale(_scale_center, _scale_factor);
149  newQueue.push_back(e);
150  }
151 
152  return newQueue;
153 }
geo::Coordinate _scale_center
Definition: entityops.h:232
geo::Coordinate _scale_factor
Definition: entityops.h:232

Member Data Documentation

geo::Coordinate lc::operation::Scale::_scale_center
private

Definition at line 232 of file entityops.h.

geo::Coordinate lc::operation::Scale::_scale_factor
private

Definition at line 232 of file entityops.h.


The documentation for this class was generated from the following files: