重构材质更新代码

pull/29/head
ChenX 7 years ago
parent 1ba99bdb1d
commit cf9b7e1f6c

@ -226,7 +226,6 @@ export class Circle extends Curve
UpdateDrawObject(type: RenderType, obj: Object3D)
{
let line = obj as THREE.Line;
line.material = ColorMaterial.GetLineMaterial(this.ColorIndex);
let geo = line.geometry as Geometry;
this.UpdateGeometry(geo);
}

@ -1,5 +1,7 @@
import { Vector3 } from 'three';
import { Mesh, Object3D, Vector3 } from 'three';
import { ColorMaterial } from '../Common/ColorPalette';
import { RenderType } from '../GraphicsSystem/Enum';
import { IntersectOption } from '../GraphicsSystem/IntersectWith';
import { Factory } from './CADFactory';
import { Entity } from './Entity';
@ -87,4 +89,18 @@ export abstract class Curve extends Entity
*/
IntersectWith(curve: Curve, intType: IntersectOption): Vector3[] { return; }
//------------------绘制相关------------------
/**
* :
*
* @param {RenderType} type
* @param {Object3D} en
* @memberof Curve
*/
UpdateDrawObjectMaterial(type: RenderType, en: Object3D)
{
let m = en as Mesh;
m.material = ColorMaterial.GetLineMaterial(this.m_Color);
}
}

@ -108,6 +108,7 @@ export class Entity extends CADObject
{
en.visible = !this._isErase;
this.UpdateDrawObject(type, en);
this.UpdateDrawObjectMaterial(type, en);
this.UpdateBoundingSphere(en);
}
}
@ -123,6 +124,18 @@ export class Entity extends CADObject
{
}
/**
* ,
*
* @param {RenderType} type
* @param {Object3D} en
* @memberof Entity
*/
UpdateDrawObjectMaterial(type: RenderType, en: Object3D)
{
}
UpdateVisible()
{
for (let [, en] of this.m_DrawEntity)

@ -35,8 +35,6 @@ export class Line extends Curve
{
let lineObj = en as THREE.Line;
lineObj.material = ColorMaterial.GetLineMaterial(this.ColorIndex);
let geo = lineObj.geometry as THREE.Geometry;
geo.vertices[0].copy(this.m_StartPoint);

Loading…
Cancel
Save