* working on new part definitions * draft of new part definitions * updates comments * starting new allocator * starting from the old allocator * alloc internals renaming * alloc minor renaming * alloc internal renaming * progress on new parts definition * progress on new part defs allocator * refactors BBLoc; progress on new allocator * more progress on new allocator * finishing new allocator * deleting old allocator * moves new allocator and part definitions * porting to new part definitions * refactors instructions for new definitions * debugging new allocator * fixes ground and power wire colros * fixing new part definition bugs * fixes wire end offsets; fixes NeoPixel placement * fixes colorGroup issue * fixes led matrix wiring * naming tweaks * fixes instructions regressions * typo
35 lines
1.1 KiB
TypeScript
35 lines
1.1 KiB
TypeScript
|
|
namespace pxsim.visuals {
|
|
export function mkGenericPartSVG(partVisual: PartVisualDefinition): SVGAndSize<SVGImageElement> {
|
|
let imgAndSize = mkImageSVG({
|
|
image: partVisual.image,
|
|
width: partVisual.width,
|
|
height: partVisual.height,
|
|
imageUnitDist: partVisual.pinDistance,
|
|
targetUnitDist: PIN_DIST
|
|
});
|
|
return imgAndSize;
|
|
}
|
|
|
|
export class GenericPart implements IBoardPart<any> {
|
|
public style: string = "";
|
|
public element: SVGElement;
|
|
defs: SVGElement[] = [];
|
|
|
|
constructor(partVisual: PartVisualDefinition) {
|
|
let imgAndSize = mkGenericPartSVG(partVisual);
|
|
let img = imgAndSize.el;
|
|
this.element = svg.elt("g");
|
|
this.element.appendChild(img);
|
|
}
|
|
|
|
moveToCoord(xy: Coord): void {
|
|
translateEl(this.element, xy);
|
|
}
|
|
|
|
//unused
|
|
init(bus: EventBus, state: any, svgEl: SVGSVGElement): void { }
|
|
updateState(): void { }
|
|
updateTheme(): void { }
|
|
}
|
|
} |