Qt Jambi Home

com.trolltech.qt.gui
Class QLineF

java.lang.Object
  extended by com.trolltech.qt.QSignalEmitter
      extended by com.trolltech.qt.QtJambiObject
          extended by com.trolltech.qt.gui.QLineF
All Implemented Interfaces:
QtJambiInterface

public class QLineF
extends QtJambiObject

The QLineF class provides a two-dimensional vector using floating point precision.

A QLineF describes a finite length line (or line segment) on a two-dimensional surface. QLineF defines the start and end points of the line using floating point accuracy for coordinates. Use the toLine function to retrieve an integer based copy of this line.

The positions of the line's start and end points can be retrieved using the p1, x1, y1, p2, x2, and y2 functions. The dx and dy functions return the horizontal and vertical components of the line, respectively.

The line's length can be retrieved using the length function, and altered using the setLength function. Use the isNull function to determine whether the QLineF represents a valid line or a null line.

The intersect() function determines the IntersectType for this line and a given line, while the angle function returns the angle between the lines. In addition, the unitVector function returns a line that has the same starting point as this line, but with a length of only 1, while the normalVector function returns a line that is perpendicular to this line with the same starting point and length.

Finally, the line can be translated a given offset using the translate function, and can be traversed using the pointAt function.

See Also:
QLine, QPolygonF, QRectF

Nested Class Summary
static class QLineF.IntersectType
          Describes the intersection between two lines.
 
Nested classes/interfaces inherited from class com.trolltech.qt.QSignalEmitter
QSignalEmitter.AbstractSignal, QSignalEmitter.Signal0, QSignalEmitter.Signal1<A>, QSignalEmitter.Signal2<A,B>, QSignalEmitter.Signal3<A,B,C>, QSignalEmitter.Signal4<A,B,C,D>, QSignalEmitter.Signal5<A,B,C,D,E>, QSignalEmitter.Signal6<A,B,C,D,E,F>, QSignalEmitter.Signal7<A,B,C,D,E,F,G>, QSignalEmitter.Signal8<A,B,C,D,E,F,G,H>, QSignalEmitter.Signal9<A,B,C,D,E,F,G,H,I>
 
Constructor Summary
QLineF()
          Constructs a null line.
QLineF(double x1, double y1, double x2, double y2)
          Constructs a line object that represents the line between (x1, y1) and (x2, y2).
QLineF(QLine line)
          Construct a QLineF object from the given integer-based line.
QLineF(QPointF pt1, QPointF pt2)
          Constructs a line object that represents the line between pt1 and pt2.
 
Method Summary
 double angle(QLineF l)
          Returns the angle (in degrees) between this line and the given l, taking the direction of the lines into account.
 double dx()
          Returns the horizontal component of the line's vector.
 double dy()
          Returns the vertical component of the line's vector.
 boolean equals(java.lang.Object other)
          
static QLineF fromNativePointer(QNativePointer nativePointer)
          This function returns the QLineF instance pointed to by nativePointer
 QLineF.IntersectType intersect(QLineF line, QPointF intersectionPoint)
          Returns a value indicating whether or not this line intersects with the given line.
 boolean isNull()
          Returns true if the line is not set up with valid start and end point; otherwise returns false.
 double length()
          Returns the length of the line.
static QNativePointer nativePointerArray(QLineF[] array)
          This function returns a QNativePointer that is pointing to the specified QLineF array.
 QLineF normalVector()
          Returns a line that is perpendicular to this line with the same starting point and length.
 QPointF p1()
          Returns the line's start point.
 QPointF p2()
          Returns the line's end point.
 QPointF pointAt(double t)
          Returns the point at the parameterized position specified by t.
 void readFrom(QDataStream arg__1)
          Reads a QLineF from arg__1.
 void setLength(double len)
          Sets the length of the line to the given len.
 QLine toLine()
          Returns an integer based copy of this line.
 void translate(double dx, double dy)
          Translates this line the distance specified by dx and dy.
 void translate(QPointF p)
          Translates this line by the given p.
 QLineF unitVector()
          Returns the unit vector for this line, i.e a line starting at the same point as this line with a length of 1.0.
 void writeTo(QDataStream arg__1)
          Writes thisQLineF to arg__1.
 double x1()
          Returns the x-coordinate of the line's start point.
 double x2()
          Returns the x-coordinate of the line's end point.
 double y1()
          Returns the y-coordinate of the line's start point.
 double y2()
          Returns the y-coordinate of the line's end point.
 
Methods inherited from class com.trolltech.qt.QtJambiObject
dispose, disposed, finalize, reassignNativeResources, tr, tr, tr
 
Methods inherited from class com.trolltech.qt.QSignalEmitter
blockSignals, disconnect, disconnect, signalsBlocked, signalSender, thread
 
Methods inherited from class java.lang.Object
clone, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.trolltech.qt.QtJambiInterface
disableGarbageCollection, nativeId, nativePointer, reenableGarbageCollection, setJavaOwnership
 

Constructor Detail

QLineF

public QLineF(double x1,
              double y1,
              double x2,
              double y2)

Constructs a line object that represents the line between (x1, y1) and (x2, y2).


QLineF

public QLineF(QPointF pt1,
              QPointF pt2)

Constructs a line object that represents the line between pt1 and pt2.


QLineF

public QLineF(QLine line)

Construct a QLineF object from the given integer-based line.

See Also:
toLine

QLineF

public QLineF()

Constructs a null line.

Method Detail

angle

public final double angle(QLineF l)

Returns the angle (in degrees) between this line and the given l, taking the direction of the lines into account. If the lines do not intersect within their range, it is the intersection point of the extended lines that serves as origo (see QLineF::UnboundedIntersection).

When the lines are parallel, this function returns 0 if they have the same direction; otherwise it returns 180.

See Also:
intersect

dx

public final double dx()

Returns the horizontal component of the line's vector.

See Also:
dy, pointAt

dy

public final double dy()

Returns the vertical component of the line's vector.

See Also:
dx, pointAt

isNull

public final boolean isNull()

Returns true if the line is not set up with valid start and end point; otherwise returns false.


length

public final double length()

Returns the length of the line.

See Also:
setLength

normalVector

public final QLineF normalVector()

Returns a line that is perpendicular to this line with the same starting point and length.

See Also:
unitVector

writeTo

public final void writeTo(QDataStream arg__1)
Writes thisQLineF to arg__1.


readFrom

public final void readFrom(QDataStream arg__1)
Reads a QLineF from arg__1.


p1

public final QPointF p1()

Returns the line's start point.

See Also:
x1, y1, p2

p2

public final QPointF p2()

Returns the line's end point.

See Also:
x2, y2, p1

pointAt

public final QPointF pointAt(double t)

Returns the point at the parameterized position specified by t. The function returns the line's start point if t = 0, and its end point if t = 1.

See Also:
dx, dy

setLength

public final void setLength(double len)

Sets the length of the line to the given len. If the line is a null line, the length will remain zero regardless of the length specified.

See Also:
length, isNull

toLine

public final QLine toLine()

Returns an integer based copy of this line.

Note that the returned line's start and end points are rounded to the nearest integer.

See Also:
QLineF

translate

public final void translate(QPointF p)

Translates this line by the given p.


translate

public final void translate(double dx,
                            double dy)

Translates this line the distance specified by dx and dy.


unitVector

public final QLineF unitVector()

Returns the unit vector for this line, i.e a line starting at the same point as this line with a length of 1.0.

See Also:
normalVector

x1

public final double x1()

Returns the x-coordinate of the line's start point.

See Also:
p1

x2

public final double x2()

Returns the x-coordinate of the line's end point.

See Also:
p2

y1

public final double y1()

Returns the y-coordinate of the line's start point.

See Also:
p1

y2

public final double y2()

Returns the y-coordinate of the line's end point.

See Also:
p2

fromNativePointer

public static QLineF fromNativePointer(QNativePointer nativePointer)
This function returns the QLineF instance pointed to by nativePointer

Parameters:
nativePointer - the QNativePointer of which object should be returned.

nativePointerArray

public static QNativePointer nativePointerArray(QLineF[] array)
This function returns a QNativePointer that is pointing to the specified QLineF array.

Parameters:
array - the array that the returned pointer will point to.
Returns:
a QNativePointer that is pointing to the specified array.

equals

public boolean equals(java.lang.Object other)

Overrides:
equals in class java.lang.Object

intersect

public final QLineF.IntersectType intersect(QLineF line,
                                            QPointF intersectionPoint)
Returns a value indicating whether or not this line intersects with the given line.

The actual intersection point is extracted to intersectionPoint (if the pointer is valid). If the lines are parallel, the intersection point is undefined.


Qt Jambi Home