| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- /*
- * PolySceneLine.cpp
- * Poly
- *
- * Created by Ivan Safrin on 10/8/08.
- * Copyright 2008 __MyCompanyName__. All rights reserved.
- *
- */
- #include "PolySceneLine.h"
- using namespace Polycode;
- SceneLine::SceneLine(SceneEntity *ent1, SceneEntity *ent2) : SceneEntity() {
- this->ent1 = ent1;
- this->ent2 = ent2;
- mesh = new Mesh(Mesh::LINE_MESH);
-
- Polygon *poly = new Polygon();
- poly->addVertex(0,0,0);
- poly->addVertex(0,0,0);
- mesh->addPolygon(poly);
-
- ignoreParentMatrix = true;
- }
- SceneLine::~SceneLine() {
- }
- void SceneLine::Render() {
-
- Vector3 v1;
- v1 = ent1->getConcatenatedMatrix().getPosition();
- Vector3 v2;
- v2 = ent2->getConcatenatedMatrix().getPosition();
-
- mesh->getPolygon(0)->getVertex(0)->set(v1.x,v1.y,v1.z);
- mesh->getPolygon(0)->getVertex(1)->set(v2.x,v2.y,v2.z);
- mesh->arrayDirtyMap[RenderDataArray::VERTEX_DATA_ARRAY] = true;
-
- Renderer *renderer = CoreServices::getInstance()->getRenderer();
- renderer->setTexture(NULL);
- renderer->pushDataArrayForMesh(mesh, RenderDataArray::VERTEX_DATA_ARRAY);
- renderer->pushDataArrayForMesh(mesh, RenderDataArray::TEXCOORD_DATA_ARRAY);
- renderer->pushDataArrayForMesh(mesh, RenderDataArray::NORMAL_DATA_ARRAY);
-
- renderer->drawArrays(mesh->getMeshType());
-
- }
|