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
  • 相关阅读:
    产品生成器模块的问题图片处理
    jQueryinteface效果集合
    aspx页面中文汉字显示为乱码
    实用的正则表达式
    用javascript操作xml
    标注上下标的方法
    1740 博弈
    1028 母函数
    To resolve the problem of sharepoint can not login
    Modify Sharepoint Login UI
  • 原文地址:https://www.cnblogs.com/herd/p/15769559.html
Copyright © 2011-2022 走看看