• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

kig

Public Types | Public Member Functions | Static Public Member Functions | List of all members
RayImp Class Reference

#include <line_imp.h>

Inheritance diagram for RayImp:
Inheritance graph
[legend]

Public Types

typedef AbstractLineImp Parent
 
- Public Types inherited from AbstractLineImp
typedef CurveImp Parent
 
- Public Types inherited from CurveImp
typedef ObjectImp Parent
 

Public Member Functions

 RayImp (const Coordinate &a, const Coordinate &b)
 
 RayImp (const LineData &d)
 
bool contains (const Coordinate &p, int width, const KigWidget &si) const
 
bool containsPoint (const Coordinate &p, const KigDocument &doc) const
 
RayImp * copy () const
 
void draw (KigPainter &p) const
 
double getParam (const Coordinate &, const KigDocument &) const
 
const Coordinate getPoint (double param, const KigDocument &) const
 
const char * iconForProperty (int which) const
 
const ObjectImpType * impRequirementForProperty (int which) const
 
bool internalContainsPoint (const Coordinate &p, double threshold) const
 
int numberOfProperties () const
 
const QByteArrayList properties () const
 
const QByteArrayList propertiesInternalNames () const
 
ObjectImp * property (int which, const KigDocument &d) const
 
Rect surroundingRect () const
 
ObjectImp * transform (const Transformation &) const
 
const ObjectImpType * type () const
 
void visit (ObjectImpVisitor *vtor) const
 
- Public Member Functions inherited from AbstractLineImp
 ~AbstractLineImp ()
 
LineData data () const
 
bool equals (const ObjectImp &rhs) const
 
const QString equationString () const
 
bool inRect (const Rect &r, int width, const KigWidget &) const
 
bool isPropertyDefinedOnOrThroughThisImp (int which) const
 
double slope () const
 
- Public Member Functions inherited from CurveImp
Coordinate attachPoint () const
 
QString cartesianEquationString (const KigDocument &w) const
 
- Public Member Functions inherited from ObjectImp
virtual ~ObjectImp ()
 
virtual bool canFillInNextEscape () const
 
virtual void fillInNextEscape (QString &s, const KigDocument &) const
 
int getPropGid (const char *pname) const
 
int getPropLid (int propgid) const
 
const char * getPropName (int propgid) const
 
bool inherits (const ObjectImpType *t) const
 
virtual bool isCache () const
 
bool valid () const
 

Static Public Member Functions

static const ObjectImpType * stype ()
 
- Static Public Member Functions inherited from AbstractLineImp
static const ObjectImpType * stype ()
 
- Static Public Member Functions inherited from CurveImp
static const ObjectImpType * stype ()
 
- Static Public Member Functions inherited from ObjectImp
static const ObjectImpType * stype ()
 

Additional Inherited Members

- Protected Member Functions inherited from AbstractLineImp
 AbstractLineImp (const LineData &d)
 
 AbstractLineImp (const Coordinate &a, const Coordinate &b)
 
- Protected Member Functions inherited from CurveImp
double getDist (double param, const Coordinate &p, const KigDocument &doc) const
 
double getParamofmin (double a, double b, const Coordinate &p, const KigDocument &doc) const
 
- Protected Member Functions inherited from ObjectImp
 ObjectImp ()
 
- Protected Attributes inherited from AbstractLineImp
LineData mdata
 

Detailed Description

An ObjectImp representing a ray.

This means half of a line, it is infinite in one direction, but ends at a certain point in the other direction.

Definition at line 136 of file line_imp.h.

Member Typedef Documentation

typedef AbstractLineImp RayImp::Parent

Definition at line 140 of file line_imp.h.

Constructor & Destructor Documentation

RayImp::RayImp ( const Coordinate &  a,
const Coordinate &  b 
)

Construct a ray, starting at a, and going through b.

Definition at line 314 of file line_imp.cc.

RayImp::RayImp ( const LineData &  d)

Construct a ray from a LineData.

Definition at line 484 of file line_imp.cc.

Member Function Documentation

bool RayImp::contains ( const Coordinate &  p,
int  width,
const KigWidget &  si 
) const
virtual

Implements ObjectImp.

Definition at line 294 of file line_imp.cc.

bool RayImp::containsPoint ( const Coordinate &  p,
const KigDocument &   
) const
virtual

Return whether this Curve contains the given point.

This is implemented as a numerical approximation. Implementations can/should use the value test_threshold in common.h as a threshold value.

Implements CurveImp.

Definition at line 604 of file line_imp.cc.

RayImp * RayImp::copy ( ) const
virtual

Returns a copy of this ObjectImp.

The copy is an exact copy. Changes to the copy don't affect the original.

Implements CurveImp.

Definition at line 329 of file line_imp.cc.

void RayImp::draw ( KigPainter &  p) const
virtual

Implements ObjectImp.

Definition at line 289 of file line_imp.cc.

double RayImp::getParam ( const Coordinate &  p,
const KigDocument &   
) const
virtual

Reimplemented from CurveImp.

Definition at line 370 of file line_imp.cc.

const Coordinate RayImp::getPoint ( double  param,
const KigDocument &   
) const
virtual

Implements CurveImp.

Definition at line 364 of file line_imp.cc.

const char * RayImp::iconForProperty ( int  which) const
virtual

Reimplemented from AbstractLineImp.

Definition at line 208 of file line_imp.cc.

const ObjectImpType * RayImp::impRequirementForProperty ( int  which) const
virtual

Reimplemented from AbstractLineImp.

Definition at line 201 of file line_imp.cc.

bool RayImp::internalContainsPoint ( const Coordinate &  p,
double  threshold 
) const

Definition at line 609 of file line_imp.cc.

int RayImp::numberOfProperties ( ) const
virtual

Reimplemented from AbstractLineImp.

Definition at line 178 of file line_imp.cc.

const QByteArrayList RayImp::properties ( ) const
virtual

Reimplemented from AbstractLineImp.

Definition at line 192 of file line_imp.cc.

const QByteArrayList RayImp::propertiesInternalNames ( ) const
virtual

Reimplemented from AbstractLineImp.

Definition at line 183 of file line_imp.cc.

ObjectImp * RayImp::property ( int  which,
const KigDocument &  d 
) const
virtual

Reimplemented from AbstractLineImp.

Definition at line 221 of file line_imp.cc.

const ObjectImpType * RayImp::stype ( )
static

Returns the ObjectImpType representing the RayImp type.

Definition at line 562 of file line_imp.cc.

Rect RayImp::surroundingRect ( ) const
virtual

Implements ObjectImp.

Definition at line 647 of file line_imp.cc.

ObjectImp * RayImp::transform ( const Transformation &  t) const
virtual

Return this ObjectImp, transformed by the transformation t.

Implements ObjectImp.

Definition at line 455 of file line_imp.cc.

const ObjectImpType * RayImp::type ( ) const
virtual

Returns the lowermost ObjectImpType that this object is an instantiation of.

E.g. if you want to get a string containing the internal name of the type of an object, you can do:

std::string typename = object.type()->internalName();

Implements ObjectImp.

Definition at line 584 of file line_imp.cc.

void RayImp::visit ( ObjectImpVisitor *  vtor) const
virtual

Implements ObjectImp.

Definition at line 504 of file line_imp.cc.


The documentation for this class was generated from the following files:
  • line_imp.h
  • line_imp.cc
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:35:41 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kig

Skip menu "kig"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal