RouteToAngle
- class ipkiss3.all.RouteToAngle
A Route that directs the start_port towards a given angle
- Parameters:
- start_port: Port, required
The port to route from
- domain: __Domain__, optional
The domain ( e.g. OpticalDomain, ElectricalDomain) of the route
- angle_out: float, optional
The angle to route to
- angle_in: float, optional
The angle of start section of the route
- end_straight: float and Real, number and number >= 0, optional
The length of the straight end section of the route
- min_straight: float and Real, number and number >= 0, optional
The minimum length of any straight sections in the route
- angle_step: float and number > 0, optional
Angle step for rounding.
- rounding_algorithm: optional, *None allowed*
rounding algorithm used to generate the bends. Can be circular, spline, …
- bend_radius: float and number > 0, optional
Bend radius for the auto-generated bends.
- start_straight: float and Real, number and number >= 0, optional
The length of the straight start section of the route
- closed: optional
- end_face_angle: ( float ), optional, *None allowed*
Use this to overrule the ‘dangling’ angle at the end of an open shape
- start_face_angle: ( float ), optional, *None allowed*
Use this to overrule the ‘dangling’ angle at the start of an open shape
- points: optional
points of this shape
- Other Parameters:
- end_port: locked
- end_pos: Coord2, locked
The coordinate where the route ends
- start_pos: Coord2, locked
- size_info: SizeInfo, locked
get the size information on this Shape
See also
Examples
import si_fab.all as pdk # noqa: F401 import ipkiss3.all as i3 start_port = i3.OpticalPort(name="in", position=(5.0, 0.0), angle_deg=45.0) # create the route object route = i3.RouteToAngle(start_port=start_port, start_straight=10.0, end_straight=10.0, angle_out=180.0) # a route is a Shape, so we can use it to draw a waveguide wg = i3.RoundedWaveguide(trace_template=i3.TECH.PCELLS.WG.DEFAULT) layout = wg.Layout(shape=route) layout.visualize()