ketcher-core
Version:
Web-based molecule sketcher
55 lines (54 loc) • 2.23 kB
TypeScript
import { D3SvgElementSelection } from "../../types";
import { BaseMonomer } from "../../../../domain/entities";
import { PolymerBond } from "../../../../domain/entities/PolymerBond";
import { BaseRenderer } from '../BaseRenderer';
export declare class SnakeModePolymerBondRenderer extends BaseRenderer {
readonly polymerBond: PolymerBond;
private editorEvents;
private isSnakeBond;
private selectionElement;
private path;
private previousStateOfIsMonomersOnSameHorizontalLine;
private sideConnectionBondTurnPoint?;
bodyElement?: D3SvgElementSelection<SVGLineElement, this>;
constructor(polymerBond: PolymerBond);
get isSnake(): true;
private get isHydrogenBond();
get rootBBox(): DOMRect | undefined;
get width(): number;
get height(): number;
private get scaledPosition();
getSideConnectionEndpointAngle(monomer: BaseMonomer): number;
moveSelection(): void;
appendBond(rootElement: any): D3SvgElementSelection<SVGLineElement, this> | undefined;
appendSnakeBond(rootElement: any): D3SvgElementSelection<SVGLineElement, this> | undefined;
private drawPartOfSideConnection;
private appendSideConnectionBond;
private getMonomerWidth;
private getMonomerHeight;
private get isSideChainLikeBackbone();
private updateSnakeBondPath;
private isSecondMonomerTopRight;
private isSecondMonomerBottomRight;
private isSecondMonomerBottomLeft;
private isSecondMonomerTopLeft;
private isSecondMonomerLeft;
private addLine;
private addRandomLine;
appendBondGraph(rootElement: any): D3SvgElementSelection<SVGLineElement, this> | undefined;
private appendRootElement;
show(_theme?: unknown, force?: boolean): void;
private get isSideConnectionBondDrawn();
drawSelection(): void;
moveEnd(): void;
private moveSnakeBondEnd;
private moveGraphBondEnd;
moveStart(): void;
private moveSnakeBondStart;
private moveGraphBondStart;
protected appendHoverAreaElement(): void;
appendHover(): void;
removeHover(): D3SvgElementSelection<SVGLineElement | SVGGElement, void>;
private calculateIsSnakeBond;
remove(): void;
}