当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript point.PointCall函数代码示例

本文整理汇总了TypeScript中src/lib/point.PointCall函数的典型用法代码示例。如果您正苦于以下问题:TypeScript PointCall函数的具体用法?TypeScript PointCall怎么用?TypeScript PointCall使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了PointCall函数的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: alongTheLine

export function alongTheLine(
    start: PointLike,
    end: PointLike = [Infinity, Infinity],
    vector: PointLike = new Point(start, end),
    large = false,
): Point {
    const uVector = Point.from(vector).sign();
    const sNode = large ? PointCall(start, 'mul', 0.05) : Point.from(start);
    const eNode = large ? PointCall(end, 'mul', 0.05) : Point.from(end);

    // 起点并不是导线或者起点等于终点,直接返回
    if (!isLine(sNode) || sNode.isEqual(eNode)) {
        return Point.from(start);
    }

    let node = sNode, next = node.add(uVector);
    // 当前点没有到达终点,还在导线所在直线内部,那就前进
    while (isLine(next) && !node.isEqual(eNode)) {
        if (hasConnect(node, next)) {
            node = next;
            next = node.add(uVector);
        }
        else {
            break;
        }
    }

    return large ? node.mul(20) : node;
}
开发者ID:rectification,项目名称:circuitlab,代码行数:29,代码来源:map.ts

示例2: deleteConnect

export function deleteConnect(point: PointLike, connect: PointLike, large = false): boolean {
    const origin = large ? PointCall(point, 'mul', 0.05) : Point.from(point);
    const check = large ? PointCall(connect, 'mul', 0.05) : Point.from(connect);
    const key = point2key(origin);
    const data = $map[key];

    if (!data) {
        throw new Error(`(map) space point: ${key}`);
    }

    return data.connect.delete((node) => node.isEqual(check));
}
开发者ID:rectification,项目名称:circuitlab,代码行数:12,代码来源:map.ts

示例3: hasConnect

export function hasConnect(point: PointLike, connect: PointLike, large = false): boolean {
    const origin = large ? PointCall(point, 'mul', 0.05) : point;
    const check = large ? PointCall(connect, 'mul', 0.05) : connect;
    const key = point2key(origin);
    const data = $map[key];

    if (!data) {
        throw new Error(`(map) space point: ${key}`);
    }

    return data.connect.some((item) => item.isEqual(check));
}
开发者ID:rectification,项目名称:circuitlab,代码行数:12,代码来源:map.ts

示例4: addConnect

export function addConnect(point: PointLike, connect: PointLike, large = false): void {
    const origin = large ? PointCall(point, 'mul', 0.05) : Point.from(point);
    const check = large ? PointCall(connect, 'mul', 0.05) : Point.from(connect);
    const key = point2key(origin);
    const data = $map[key];

    if (!data) {
        throw new Error(`(map) space point: ${key}`);
    }

    if (!hasConnect(origin, check)) {
        data.connect.push(check);
    }
}
开发者ID:rectification,项目名称:circuitlab,代码行数:14,代码来源:map.ts

示例5: isLine

export function isLine(point: PointLike, large = false) {
    const node = large ? PointCall(point, 'mul', 0.05) : point;
    const data = $map[point2key(node)];

    return Boolean(data) && (data.type < 20);
}
开发者ID:rectification,项目名称:circuitlab,代码行数:6,代码来源:map.ts

示例6: deletePoint

export function deletePoint(point: PointLike, large = false) {
    const node = large ? PointCall(point, 'mul', 0.05) : Point.from(point);
    return Reflect.deleteProperty($map, point2key(node));
}
开发者ID:rectification,项目名称:circuitlab,代码行数:4,代码来源:map.ts

示例7: getPoint

export function getPoint(point: PointLike, large = false): NodeData | undefined {
    const node = large ? PointCall(point, 'mul', 0.05) : Point.from(point);
    const data = $map[point2key(node)];

    return data ? dataClone(data) : undefined;
}
开发者ID:rectification,项目名称:circuitlab,代码行数:6,代码来源:map.ts

示例8: hasPoint

export function hasPoint(point: PointLike, large = false): boolean {
    const node = large ? PointCall(point, 'mul', 0.05) : point;
    return Boolean($map[point2key(node)]);
}
开发者ID:rectification,项目名称:circuitlab,代码行数:4,代码来源:map.ts


注:本文中的src/lib/point.PointCall函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。