zoukankan      html  css  js  c++  java
  • threejs 画二维圆(圆弧)

    画圆:
    var radius = 40,
    segments = 64,
    material = new THREE.LineBasicMaterial({ color: 0x0000ff }),
    geometry = new THREE.CircleGeometry(radius, segments);
    
    // Remove center vertex
    geometry.vertices.shift();
    
    this.scene.add(new THREE.Line(geometry, material));
     
    使用THREE.Line会导致最后一点和第一点未链接,可用
    this.scene.add(new THREE.LineLoop(geometry, material));
     
     
    画圆也可用(该方法可自行设置画圆弧)
    let points = [],
    length = 100,
    circle = 40;
    for (let i = 0; i <= length; i++) {
      points.push(new THREE.Vector2(circle * Math.cos(Math.PI * 2 * i / length), circle * Math.sin(Math.PI * 2 * i / length)))
    }
    let shape = new THREE.Shape(points);
    let arcGeometry = shape.makeGeometry()
    let arcMaterial = new THREE.LineBasicMaterial({ color: 0x38d3f5 });
    let arc = new THREE.Line(arcGeometry, arcMaterial);
    this.scene.add(arc)
    注:该方法画圆最后无法闭合
  • 相关阅读:
    arrayPointer
    shellAPP
    docker
    程序运行时内存管理
    C++ deepin
    coreOS+Docker新一代企业轻量级Linux
    玩转docker
    古典小说丛书系列软件
    读《追随智慧》(一)
    高速基于echarts的大数据可视化
  • 原文地址:https://www.cnblogs.com/brainworld/p/8297995.html
Copyright © 2011-2022 走看看