protected override void applyAlphaToMaterial(float alpha)
 {
     workingAlpha = alpha;
     alphaQuat.w  = alpha;
     subEntity.setCustomParameter(0, alphaQuat);
     if (disableOnHidden)
     {
         entity.setVisible(alpha >= 0.00008f);
     }
     if (alpha >= 0.9999f)
     {
         subEntity.setMaterialName(baseMaterialName);
         entity.setRenderQueueGroup(0);
     }
     else
     {
         subEntity.setMaterialName(finalAlphaMaterialName);
         entity.setRenderQueueGroup((byte)(95 + renderGroupOffset));
     }
 }
 protected override void constructed()
 {
     sceneNode = Owner.getElement(nodeName) as SceneNodeElement;
     if (sceneNode == null)
     {
         blacklist("Cannot find scene node named {0}.", nodeName);
     }
     manualObject = sceneNode.getNodeObject(manualObjectName) as ManualObject;
     if (manualObject == null)
     {
         blacklist("Cannot find manual object named {0}.", manualObjectName);
     }
     manualObject.setVisible(drawLines);
     manualObject.begin("Grid", OperationType.OT_LINE_LIST);
     manualObject.position(ref Vector3.Zero);
     manualObject.color(0, 0, 0, 0);
     manualObject.position(ref Vector3.Zero);
     manualObject.color(0, 0, 0, 0);
     manualObject.end();
     MeasurementController.setMeasurementDrawer(this);
 }