Segment trisection points calculator
Split a segment into three equal pieces in one step: from (0, 0) to (6, 0), the trisection points are (2, 0) and (4, 0), and the full length is 6. Useful for equal markers along an edge. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- X1
- 0
- Y1
- 0
- X2
- 6
- Y2
- 0
- T1x
- 2
- T1y
- 0
- T2x
- 4
- T2y
- 0
Trisection of a plane segment means locating the two interior points that cut the segment into three congruent pieces of equal length. Students meet the idea when learning parametric section of a line; survey assistants and CAD helpers need the same numbers when marking equal chainages; game and mesh tools place anchors at regular fractions of an edge.
What segment trisection is and why people search for it
In Euclidean plane geometry the internal trisection points of segment AB are the unique points T1 and T2 on the closed segment such that the three sub-segments AT1, T1T2, and T2B all have the same length. Parametrically, if a point on the line is written as A plus t times (B minus A), then T1 is the case t equals one third and T2 is the case t equals two thirds.
Expanded in coordinates that is t1x equals (two times x1 plus x2) divided by three, t1y equals (two times y1 plus y2) divided by three, and symmetrically t2x equals (x1 plus two times x2) divided by three with the same form for y. Search intent clusters around phrases such as segment trisection points calculator, divide a segment into three equal parts, trisection of a line segment from coordinates, and find points at one third and two thirds of a segment.
Unlike a midpoint-only helper, this landing returns both interior thirds; unlike a general m-to-n section formula landing, it specializes the ratio to the equal three-part case that people name trisection and search for by that word.
Practical use, limits, pricing, and delivery channels
Use the browser tool when you want immediate trisection points while checking homework, placing equal markers along an edge, or verifying a sketch without installing a computer-algebra system. Coordinates may be any finite numbers within a large absolute bound suitable for ordinary CAD and classroom figures; the response coordinates share the same unit system you already use. Results are fully deterministic: the same four numbers always yield the same t1, t2, and length fields.
There is no language model, no external geometry service, and no randomness, so the capacity is safe to pin in continuous-integration checks and reproducible lesson materials.
FAQ
Is the segment trisection calculator free?
The browser tool runs free on your device.
What are the trisection points of the segment from (0, 0) to (6, 0)?
They are (2, 0) and (4, 0). The segment is 6 long, so each of the three pieces measures 2, starting from A and ending at B.
What is the formula for the trisection points?
For the first point, take twice A plus B and divide by three, coordinate by coordinate. For the second, take A plus twice B and divide by three. They sit one third and two thirds of the way from A.
What happens if both ends are the same point?
The segment has no length, so it cannot be divided into three parts. You get a clear message that the two ends coincide instead of two meaningless points.
How is this different from a midpoint or section formula tool?
A midpoint tool gives one point in the middle, and a section formula takes any ratio. This one is set to equal thirds and returns both interior points at once.
Related tools
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/geom/segment-trisection \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"x1":0,"y1":0,"x2":6,"y2":0}'const res = await fetch("https://api.kit.forhosting.com/geom/segment-trisection", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"x1": 0,
"y1": 0,
"x2": 6,
"y2": 0
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/segment-trisection",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"x1": 0,
"y1": 0,
"x2": 6,
"y2": 0
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/segment-trisection", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"x1":0,"y1":0,"x2":6,"y2":0}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"x1":0,"y1":0,"x2":6,"y2":0}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/segment-trisection", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"x1": 0,
"y1": 0,
"x2": 6,
"y2": 0
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.segment_trisection",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
Given endpoints A and B, those points sit at one-third and two-thirds of the way from A to B along the straight line. This capacity accepts four coordinates—x1, y1, x2, y2—rejects coincident or incomplete endpoints, and returns t1 and t2 together with the Euclidean length of AB.
What segment trisection is and why people search for it
Delivering t1x, t1y, t2x, and t2y as JSON makes the result easy to diff in continuous integration, feed into a larger pipeline, or copy into notes.
How this calculator validates input and computes the one-third points
The Euclidean length of AB is returned as length via the hypotenuse of the coordinate differences so callers can verify that each third is length divided by three without a second request. Send a JSON body with the four required fields x1, y1, x2, and y2. Each field must be a finite number; JSON numbers or numeric strings are accepted after trim. The engine rejects missing fields, empty strings, NaN, and infinities with invalid_input so those failed calls are not charged. After parsing, it compares the endpoints: if x1 equals x2 and y1 equals y2, the segment has zero length and trisection is undefined, so the request fails with invalid_input and a clear message that the endpoints coincide. For distinct endpoints the two trisection points are computed as weighted averages: T1 uses weights two and one on A and B, T2 uses weights one and two. Results are rounded to a stable decimal precision so the same coordinates always yield the same JSON across JavaScript engines. The response echoes the four input coordinates, returns t1x, t1y, t2x, t2y, length, and sets method to parametric_one_third so callers can assert the algorithm in tests. There is no trigonometry beyond the length hypotenuse, no matrix inversion, and no external geometry service—only arithmetic on a Worker isolate.
Practical use, limits, pricing, and delivery channels
Each successful request is one billable item at $0.002; failed validation does not consume balance. Wire the endpoint into equal-spacing demos, contest answer checkers, sprite path helpers, or preprocessing steps where you already prefer explicit one-third and two-third coordinates over opaque black-box widgets that cannot explain why coincident endpoints are rejected. If you need only the halfway point, a general ratio m-to-n section, distance alone, or slope, use those dedicated landings when they exist—this capacity focuses solely on the two internal trisection points of a plane segment with distinct endpoints.
Integration use cases
Homework and exam trisection drills
Students and graders confirm the two points that split a segment into three equal parts from endpoint coordinates, including rejection when the endpoints coincide.
Deterministic fixtures for geometry tests
Pipelines that seed unit tests or interactive segment demos can call a pure trisection oracle instead of reimplementing the one-third and two-third averages in every language.
CAD, mesh, and path equal-spacing anchors
Tools that place labels, collision samples, or UI markers at regular thirds of an edge can recover both trisection points as structured JSON for import.
Technical questions
How do I compute segment trisection points with this API?
Send a JSON body with x1, y1, x2, and y2 to geom.segment_trisection. The response returns t1x, t1y (one third from A) and t2x, t2y (two thirds from A), plus the segment length.
What formula does the trisection calculator use?
Parametric section at t=1/3 and t=2/3: T1 = ((2·x1+x2)/3, (2·y1+y2)/3) and T2 = ((x1+2·x2)/3, (y1+2·y2)/3). The method field is always parametric_one_third.
What happens if the endpoints are the same point?
The request fails with invalid_input because trisection is undefined for a zero-length segment. Those validation failures are not charged.
How is this different from the midpoint calculator?
Midpoint returns the single halfway point (t=1/2). Trisection returns the two interior points at t=1/3 and t=2/3 that divide the segment into three equal lengths, and rejects coincident endpoints.