OEBondGlyphCurvedArrow¶
class OEBondGlyphCurvedArrow : public OEBondGlyphBase
By using the OEBondGlyphCurvedArrow class, bonds can be annotated by drawing a curved arrow across them.
See also
Annotating Atoms and Bonds chapter
OEBondGlyphArrow class
OEBondGlyphCircle class
OEBondGlyphCross class
OEBondGlyphScissors class
OEBondGlyphStitch class
OEBondGlyphZigZag class
The following methods are publicly inherited from OEBondGlyphBase:
Constructors¶
OEBondGlyphCurvedArrow(const OEDepict::OEPen &pen, double arrowRadiusScale=1.0,
bool clockwise=true, double arcAngle=270.0,
unsigned int layer=OEDepict::OELayerPosition::Above)
Creates an OEBondGlyphCurvedArrow object with the specified parameters.
- pen
The pen used when drawing a curved arrow at the middle of the bond.
See examples (A) and (B) in Figure: Example of bond annotations.
- arrowRadiusScale
The multiplier used to modify the radius of the drawn arc.
See examples (A) and (C) in Figure: Example of bond annotations.
- clockwise
The direction of the arrow.
See examples (A) and (D) in Figure: Example of bond annotations.
- arcAngle
The angel of the arc in degrees. The value has to be in a range of \([0.0^{\circ}, 360.0^{\circ}]\).
See examples (A) and (E) in Figure: Example of bond annotations.
- layer
Specifies whether the curved arrow is drawn above (
OELayerPosition::Above
) or below (OELayerPosition::Below
) the molecule.See examples (B) and (F) in Figure: Example of bond annotations.
CreateCopy¶
OEBondGlyphBase *CreateCopy() const
Deep copy constructor that returns a copy of the object. The memory for the returned OEBondGlyphCurvedArrow object is dynamically allocated and owned by the caller.
RenderGlyph¶
bool RenderGlyph(OEDepict::OE2DMolDisplay &disp,
const OEChem::OEBondBase *bond) const
Draws a glyph (in this case a curved arrow) in the middle of the given bond.
- disp
The OE2DMolDisplay object that is modified to annotate the specified bond.
- bond
The OEBondBase object being annotated.