# Add defaults on Attributes Form to save calculated fields into layer (otherwise use Virtual Fields) # Start and end position and length in 5 separate attribute columns $x_at(0) $y_at(0) $x_at(-1) $y_at(-1) $length # or format_number($x_at(0), 2) format_number($y_at(0), 2) format_number($x_at(-1), 2) format_number($y_at(-1), 2) format_number($length, 2) # Azimuth in separate column CASE WHEN degrees(azimuth(start_point($geometry), end_point($geometry))) > 180 THEN format_number(degrees(azimuth(start_point($geometry), end_point($geometry)))-180,2) ELSE format_number(degrees(azimuth(start_point($geometry), end_point($geometry))),2) END