at
at <component>
Places the component on the canvas and sets the current insertion point at the component. By default, if no pin number is specified, pin 1 is used.
To specify the insertion point at a given pin number, write at <component> pin <pin number>.
Example:
from "std" import *
gnd = dgnd() # define a GND net component
# create a component with 3 pins
my_component = create component:
pins: 3
at my_component # If pin is not specified, pin 1 is used.
wire left 200 down 100
add res(10k)
wire down 100
to gnd
at my_component pin 2 # Move cursor to pin 2 of component
wire right 100 down 100
add cap(100n)
wire down 100
to gnd
If there is no net at this pin, a unique net will be created.
To display a component on the schematic, it must be called at least once with at <component> or with to <component>. Otherwise, the component will not be visible in the schematic.
Example:
from "std" import *
supply1 = supply("1.1V")
supply2 = supply("2.2V")
at supply1 # visible
# supply2 is not visible
Example 2:
from "std" import *
supply1 = supply("1.1V")
supply2 = supply("2.2V")
at supply1 # visible
at supply2 # supply2 is visible
point reference
at can also position the cursor at a named point defined by point "name":
at "point_name"— move cursor to the named point defined bypoint "point_name"at some_var— move cursor to the named point stored in a variable (bare variable form, wheresome_varholds a point name string)at array_get(names, i)— move cursor to a dynamically-selected named point from an array
Example:
from "std" import *
gnd = dgnd()
names = []
gnds = []
at v5 = supply("5V")
wire down 100
for i in range(0, 5):
point "hello_" + i
array_push(names, "hello_" + i)
if i < 4:
wire right 300
for i in range(0, 5):
# dynamic reference via array_get
at array_get(names, i)
wire down 100
add cap(100n)
tmp_name = "gnd_" + i
# bare variable form
point tmp_name
array_push(gnds, tmp_name)
for i in range(0, 5):
at gnd
wire up 100
# bare variable referencing
to array_get(gnds, i)