Engauge Digitizer
2
Toggle main menu visibility
Loading...
Searching...
No Matches
Centipede
CentipedeSegmentConstantTRadial.h
Go to the documentation of this file.
1
/******************************************************************************************************
2
* (C) 2020 markummitchell@github.com. This file is part of Engauge Digitizer, which is released *
3
* under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file *
4
* LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. *
5
******************************************************************************************************/
6
7
#ifndef CENTIPEDE_SEGMENT_CONSTANT_T_RADIAL_H
8
#define CENTIPEDE_SEGMENT_CONSTANT_T_RADIAL_H
9
10
#include "
CentipedeSegmentAbstract.h
"
11
#include "
DocumentModelCoords.h
"
12
13
class
GraphicsLineItemRelay
;
14
class
GraphicsScene
;
15
class
QGraphicsLineItem;
16
18
class
CentipedeSegmentConstantTRadial
:
public
CentipedeSegmentAbstract
19
{
20
Q_OBJECT;
21
22
public
:
24
CentipedeSegmentConstantTRadial
(
GraphicsScene
&scene,
25
const
DocumentModelCoords
&modelCoords,
26
const
DocumentModelGuideline
&
modelGuideline
,
27
const
Transformation
&
transformation
,
28
const
QPointF &
posClickScreen
);
29
virtual
~CentipedeSegmentConstantTRadial
();
30
31
virtual
double
distanceToClosestEndpoint
(
const
QPointF &posScreen)
const
;
32
virtual
void
updateRadius
(
double
radius);
33
34
signals:
35
37
void
signalUpdateEndpoints
(QPointF start,
38
QPointF end);
39
40
private
:
41
CentipedeSegmentConstantTRadial
();
42
43
QGraphicsLineItem *m_graphicsItem;
44
GraphicsLineItemRelay
*m_graphicsItemRelay;
45
46
// Two points where circle around click point intersects constant coordinate line. Due to symmetry about
47
// the click circle center (for affine transformation), we do not need the center
48
QPointF m_posLow;
49
QPointF m_posHigh;
50
};
51
52
#endif
// CENTIPEDE_SEGMENT_CONSTANT_T_RADIAL_H
CentipedeSegmentAbstract.h
DocumentModelCoords.h
CentipedeSegmentAbstract::posClickScreen
QPointF posClickScreen() const
Center of circle in screen coordinates.
Definition
CentipedeSegmentAbstract.cpp:48
CentipedeSegmentAbstract::CentipedeSegmentAbstract
CentipedeSegmentAbstract(const DocumentModelGuideline &modelGuideline, const Transformation &transformation, const QPointF &posClickScreen)
Constructor with individual coordinates.
Definition
CentipedeSegmentAbstract.cpp:14
CentipedeSegmentAbstract::modelGuideline
const DocumentModelGuideline & modelGuideline() const
Settings.
Definition
CentipedeSegmentAbstract.cpp:43
CentipedeSegmentAbstract::transformation
Transformation transformation() const
Transformation which is static through the entire lifetime of the Centipede class instances.
Definition
CentipedeSegmentAbstract.cpp:53
CentipedeSegmentConstantTRadial::signalUpdateEndpoints
void signalUpdateEndpoints(QPointF start, QPointF end)
Send new geometry for later updating.
CentipedeSegmentConstantTRadial::CentipedeSegmentConstantTRadial
CentipedeSegmentConstantTRadial(GraphicsScene &scene, const DocumentModelCoords &modelCoords, const DocumentModelGuideline &modelGuideline, const Transformation &transformation, const QPointF &posClickScreen)
Constructor with individual coordinates.
Definition
CentipedeSegmentConstantTRadial.cpp:18
CentipedeSegmentConstantTRadial::~CentipedeSegmentConstantTRadial
virtual ~CentipedeSegmentConstantTRadial()
Definition
CentipedeSegmentConstantTRadial.cpp:60
CentipedeSegmentConstantTRadial::distanceToClosestEndpoint
virtual double distanceToClosestEndpoint(const QPointF &posScreen) const
Return distance to closest endpoint.
Definition
CentipedeSegmentConstantTRadial.cpp:66
CentipedeSegmentConstantTRadial::updateRadius
virtual void updateRadius(double radius)
Update geometry to reflect cursor movement.
Definition
CentipedeSegmentConstantTRadial.cpp:74
DocumentModelCoords
Model for DlgSettingsCoords and CmdSettingsCoords.
Definition
DocumentModelCoords.h:21
DocumentModelGuideline
Model for managing the coordinate values corresponding Guidelines.
Definition
DocumentModelGuideline.h:22
GraphicsLineItemRelay
Enable postponed geometry changes for QGraphicsLineItem, using a signal to trigger this class to upda...
Definition
GraphicsLineItemRelay.h:22
GraphicsScene
Add point and line handling to generic QGraphicsScene.
Definition
GraphicsScene.h:37
Transformation
Affine transformation between screen and graph coordinates, based on digitized axis points.
Definition
Transformation.h:32
Generated on
for Engauge Digitizer by
1.17.0