Package org.postgresql.geometric

# Class PGline

java.lang.Object
org.postgresql.util.PGobject
org.postgresql.geometric.PGline

All Implemented Interfaces:
  `Serializable`, `Cloneable`

public class PGline extends PGobject implements Serializable, Cloneable
This implements a line represented by the linear equation Ax + By + C = 0.

See Also:
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`double`
`a`
Coefficient of x.
`double`
`b`
Coefficient of y.
`double`
`c`
Constant.

### Fields inherited from class org.postgresql.util.PGobject

`type, value`

## Constructor Summary

Constructors
Constructor
Description
`PGline()`
required by the driver.
`PGline(double a, double b, double c)`
`PGline(double x1, double y1, double x2, double y2)`
`PGline(@Nullable PGlseg lseg)`
`PGline(@Nullable PGpoint p1, @Nullable PGpoint p2)`
`PGline(String s)`

## Method Summary

Modifier and Type
Method
Description
`Object`
`clone()`
This must be overridden to allow the object to be cloned.
`boolean`
`equals(@Nullable Object obj)`
This must be overridden to allow comparisons of objects.
`@Nullable String`
`getValue()`
This must be overridden, to return the value of the object, in the form required by org.postgresql.
`int`
`hashCode()`
Compute hash.
`void`
`setValue(@Nullable String s)`
This method sets the value of this object.

### Methods inherited from class org.postgresql.util.PGobject

`equals, getType, isNull, setType, toString`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

## Field Details

### a

public double a
Coefficient of x.

### b

public double b
Coefficient of y.

### c

public double c
Constant.

## Constructor Details

### PGline

public PGline(double a, double b, double c)

Parameters:
  `a` - coefficient of x
  `b` - coefficient of y
  `c` - constant

### PGline

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

Parameters:
  `x1` - coordinate for first point on the line
  `y1` - coordinate for first point on the line
  `x2` - coordinate for second point on the line
  `y2` - coordinate for second point on the line

### PGline

public PGline(@Nullable PGpoint p1, @Nullable PGpoint p2)

Parameters:
  `p1` - first point on the line
  `p2` - second point on the line

### PGline

public PGline(@Nullable PGlseg lseg)

Parameters:
  `lseg` - Line segment which calls on this line.

### PGline

public PGline(String s) throws SQLException

Parameters:
  `s` - definition of the line in PostgreSQL's syntax.
Throws:
  `SQLException` - on conversion failure

### PGline

public PGline()
required by the driver.

## Method Details

### setValue

public void setValue(@Nullable String s) throws SQLException
Description copied from class: `PGobject`
This method sets the value of this object. It must be overridden.

Overrides:
  `setValue` in class `PGobject`
Parameters:
  `s` - Definition of the line in PostgreSQL's syntax
Throws:
  `SQLException` - on conversion failure

### equals

public boolean equals(@Nullable Object obj)
Description copied from class: `PGobject`
This must be overridden to allow comparisons of objects.

Overrides:
  `equals` in class `PGobject`
Parameters:
  `obj` - Object to compare with
Returns:
  true if the two lines are identical

### hashCode

public int hashCode()
Description copied from class: `PGobject`
Compute hash. As equals() use only value. Return the same hash for the same value.

Overrides:
  `hashCode` in class `PGobject`
Returns:
  Value hashcode, 0 if value is null `Objects.hashCode(Object)`

### getValue

public @Nullable String getValue()
Description copied from class: `PGobject`
This must be overridden, to return the value of the object, in the form required by org.postgresql.

Overrides:
  `getValue` in class `PGobject`
Returns:
  the PGline in the syntax expected by org.postgresql

### clone

public Object clone() throws CloneNotSupportedException
Description copied from class: `PGobject`
This must be overridden to allow the object to be cloned.

Overrides:
  `clone` in class `PGobject`
Throws:
  `CloneNotSupportedException`