Modul python

Některé funkce Horzion EDA jsou k dispozici v modulu Python pro použití ve skriptech.

instalace

Modul python není zahrnut v překladu pomocí build all. Chcete-li jej sestavit, spusťte překlad pomocí make build/horizon.so. To vyžaduje mít instalovány hlavičkové soubory Pythonu veze 3. Potom můžete použít v Pythonu sys.path a importovat pomocí import horizon.

Použití

import horizon

#open project
p=horizon.Project("/path/to/project.hprj")

#open schematic
sch = p.open_top_schematic()

#export PDF
pdf_settings = sch.get_pdf_export_settings()
pdf_settings['output_filename'] = '/tmp/sch.pdf'
sch.export_pdf(pdf_settings)

#export BOM
bom_settings = sch.get_bom_export_settings()
bom_settings['output_filename'] = '/tmp/bom.csv'
sch.export_bom(bom_settings)

#open board
brd = p.open_board()

#export gerber
gerber_settings = brd.get_gerber_export_settings()
gerber_settings["output_directory"] = "/tmp/gerber"
brd.export_gerber(gerber_settings)

#export pick&place
pnp_settings = brd.get_pnp_export_settings()
pnp_settings["output_directory"] = "/tmp/pnp"
brd.export_pnp(pnp_settings)

#export STEP
step_settings = brd.get_step_export_settings()
step_settings["filename"] = "/tmp/pca.step"
brd.export_step(step_settings)

#run DRC
rules=brd.get_rules()
#modify rules if needed
rule_ids = brd.get_rule_ids()
#if needed, remove unneeded checks from rule_ids
result = brd.run_checks(rules, ids)

#export 3D rendering (see next section)
exporter = brd.export_3d(1920, 1080) #width, height
exporter.view_all()
exporter.load_3d_models() #optional
exporter.render_to_png("brd.png")

Chcete-li dále upravit nastavení exportu, podívejte se na vrácené příkazy. pomocí metody get_*_export_settings.

Použití 3D vykreslování

Použijte brd.export_3d(1920, 1080) nebo podobně pro vytvořeníImage3DExporter objektu

class Image3DExporter
render_to_png(filename)

Vykreslit obrázek formátu png

render_to_surface()

Vykreslit plochu formátu pycairo

Typ návratové hodnoty:
 cairo.Surface
load_3d_models()

Načte 3D modely pokud jsou k dispozici

view_all()

Obnoví pohled na horní stranu