Description
Divide a, b, and c by hypot(a,b), optionally reversing sign so the first nonzero normal coefficient is positive, inside result.
Line and vector geometry depends on direction, orientation, and normalization. An unoriented line repeats after a half turn, while a directed bearing repeats after a full turn; a normal vector need not have unit length.
Divide a, b, and c by hypot(a,b), optionally reversing sign so the first nonzero normal coefficient is positive, inside result.
When to use this tool
Use Geometry: Planar Line Normal Form Coefficients when you need an explicit line-direction, vector, or local planar calculation.
How to use the tool and how it works
- Enter a, b, c, orientation. Use the units and conventions below.
- Run the tool. Correct any format, range, or cross-field input error before interpreting the output.
- Read result. Expand result to inspect the returned fields.
Require nonzero finite normal (a, b) and orientation preserve or first-positive. Divide a, b, and c by hypot(a,b), optionally reversing sign so the first nonzero normal coefficient is positive, inside result.1
| Input field | Meaning and units | Accepted input |
|---|---|---|
| a | A | Required. Finite number. |
| b | B | Required. Finite number. |
| c | C | Required. Finite number. |
| orientation | Orientation | Required. Text; one of "preserve", "first-positive". Implementation limit: 8192 Unicode code points and 16384 UTF-16 code units. |
| Output field | Interpretation | Returned shape |
|---|---|---|
| result | Object containing the calculated members; expand to inspect the fields below. | Required. Object. |
| result.a | A | Calculated result member: number. |
| result.b | B | Calculated result member: number. |
| result.c | C | Calculated result member: number. |
{
"input": {
"a": -3,
"b": -4,
"c": 10,
"orientation": "first-positive"
},
"output": {
"result": {
"a": 0.6,
"b": 0.8,
"c": -2
}
}
} Limitations and assumptions
- Coefficients represent a·x+b·y+c=0 and normalization does not change that line; no line fitting, coordinate transformation, tolerance, or geometric data validation is performed.
- Outputs are nested inside result. Inputs must satisfy both the field types and the cross-field conditions above. Invalid input causes an error; a successful false flag or documented placeholder is a different result.
- Numeric calculations use binary floating point unless exact decimal-integer arithmetic is explicitly stated. No hidden measurement tolerance or decimal rounding is added; nonfinite or out-of-contract results are rejected. Numeric signed-zero results are exported as zero.
Alternative or Complementary methods
Construct the actual lines or vectors and apply the appropriate geometric tolerance. Resolve directed versus unoriented conventions and scaling before comparing coefficients or angles.
References
Similar or alternative tools
- Geometry: Line Angle Halfturn Canonical Form
Require angleDegrees within ±one billion and normalize modulo 180 into [0, 180), returning angleDegrees inside result.
- Sphere Tangent Plane Offset Point
Dot point-surface with that outward vector and divide by its norm for signedDistance.