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)
    注:该方法画圆最后无法闭合
  • 相关阅读:
    C#高级特性_Attribute
    C#高级特性_Lambda
    委托(delegate)
    C# 属性、索引
    C#中的interface
    枚举型Enum和结构型Stuct
    javascript学习笔记
    github page 和 hexo 搭建在线博客
    2015/9/22 开通博客园
    phoenix 入门
  • 原文地址:https://www.cnblogs.com/brainworld/p/8297995.html
Copyright © 2011-2022 走看看