zoukankan      html  css  js  c++  java
  • javascript earcut

    THREE.Earcut = {
    
        triangulate: function ( data, holeIndices, dim ) {
    
            dim = dim || 2;
    
            const hasHoles = holeIndices && holeIndices.length;
            const outerLen = hasHoles ? holeIndices[ 0 ] * dim : data.length;
            let outerNode = linkedList( data, 0, outerLen, dim, true );
            const triangles = [];
    
            if ( ! outerNode || outerNode.next === outerNode.prev ) return triangles;
    
            let minX, minY, maxX, maxY, x, y, invSize;
    
            if ( hasHoles ) outerNode = eliminateHoles( data, holeIndices, outerNode, dim );
    
            // if the shape is not too simple, we'll use z-order curve hash later; calculate polygon bbox
            if ( data.length > 80 * dim ) {
    
                minX = maxX = data[ 0 ];
                minY = maxY = data[ 1 ];
    
                for ( let i = dim; i < outerLen; i += dim ) {
    
                    x = data[ i ];
                    y = data[ i + 1 ];
                    if ( x < minX ) minX = x;
                    if ( y < minY ) minY = y;
                    if ( x > maxX ) maxX = x;
                    if ( y > maxY ) maxY = y;
    
                }
    
                // minX, minY and invSize are later used to transform coords into integers for z-order calculation
                invSize = Math.max( maxX - minX, maxY - minY );
                invSize = invSize !== 0 ? 1 / invSize : 0;
    
            }
    
            earcutLinked( outerNode, triangles, dim, minX, minY, invSize );
    
            return triangles;
    
        }
    
    };
    var triangles = THREE.Earcut.triangulate([10,0, 0,50, 60,60, 70,10]);

    参考:https://github.com/mapbox/earcut

    #######################################

    QQ 3087438119
  • 相关阅读:
    memcached stats 命令
    C# 压缩文件 ICSharpCode.SharpZipLib.dll
    复选框的全选与反选
    Internet Explorer 9 已安装在此系统上
    C# AES 加密与解密
    C# List<T> 泛型
    C# DataTbale详细操作
    C# 日志系统 log4net 配置及使用
    Web.config配置文件详解
    字符串比较
  • 原文地址:https://www.cnblogs.com/herd/p/15769559.html
Copyright © 2011-2022 走看看