146 System.out.println(
"--- Segment Operations ---");
159 System.out.println(
"Created segments: S1((" + segment1.getStart().getX() +
", " + segment1.getStart().getY() +
160 ") -> (" + segment1.getEnd().getX() +
", " + segment1.getEnd().getY() +
161 ")), S2((" + segment2.getStart().getX() +
", " + segment2.getStart().getY() +
162 ") -> (" + segment2.getEnd().getX() +
", " + segment2.getEnd().getY() +
"))");
167 Point segment1Start = segment1.getStart();
168 System.out.println(
"Segment1 start point: (" + segment1Start.
getX() +
", " + segment1Start.
getY() +
")");
173 Point segment1End = segment1.getEnd();
174 System.out.println(
"Segment1 end point: (" + segment1End.
getX() +
", " + segment1End.
getY() +
")");
181 System.out.printf(
"Segment1 length: %.2f meters%n", length1);
182 System.out.printf(
"Segment2 length: %.2f meters%n", length2);
188 System.out.printf(
"Distance from segment1 to test point: %.2f meters%n", distanceToPoint);
194 System.out.println(
"Segments intersect: " + intersects);
200 System.out.printf(
"Intersection point: (%.2f, %.2f)%n", intersection.
getX(), intersection.
getY());
206 System.out.printf(
"Division ratio: %.2f%n", divisionRatio);
213 System.out.printf(
"Point at ratio %.1f: (%.2f, %.2f)%n", ratio, ratioPoint.
getX(), ratioPoint.
getY());
219 System.out.printf(
"Projection ratio: %.2f%n", projectionRatio);
296 System.out.println(
"--- Line Operations ---");
299 List<Segment> lineSegments = Arrays.asList(
308 System.out.println(
"Created line with " + line.getSegments().size() +
" segments");
313 List<Segment> segments = line.getSegments();
314 System.out.println(
"Line segments: " + segments.size() +
" segments");
318 double totalLength = 0.0;
319 for (
Segment segment : segments) {
322 System.out.printf(
"Total line length: %.2f meters%n", totalLength);
325 List<Segment> complexLineSegments = Arrays.asList(
331 Line complexLine =
new Line(complexLineSegments);
333 double complexTotalLength = 0.0;
334 for (
Segment segment : complexLine.getSegments()) {
337 System.out.printf(
"Complex line total length: %.2f meters%n", complexTotalLength);