Redesign and clean of unused lineWidths

This commit is contained in:
luiscuenca 2017-11-09 17:50:38 -07:00
parent 1791ed01ca
commit 7dfdc8da59
26 changed files with 31 additions and 82 deletions

View file

@ -97,6 +97,10 @@ void LaserPointer::editRenderState(const std::string& state, const QVariant& sta
if (endDim.isValid()) {
_renderStates[state].setEndDim(vec3FromVariant(endDim));
}
QVariant lineWidth = pathProps.toMap()["lineWidth"];
if (lineWidth.isValid()) {
_renderStates[state].setLineWidth(lineWidth.toFloat());
}
});
}
@ -165,10 +169,9 @@ void LaserPointer::updateRenderState(const RenderState& renderState, const Inter
pathProps.insert("end", end);
pathProps.insert("visible", true);
pathProps.insert("ignoreRayIntersection", renderState.doesPathIgnoreRays());
float glowWidth = _scaleWithAvatar ? DEFAULT_LASER_POINTER_SIZE * avatarScale : DEFAULT_LASER_POINTER_SIZE;
pathProps.insert("glowWidth", glowWidth);
if (_scaleWithAvatar) {
pathProps.insert("lineWidth", renderState.getLineWidth() * avatarScale);
}
qApp->getOverlays().editOverlay(renderState.getPathID(), pathProps);
}
if (!renderState.getEndID().isNull()) {
@ -268,6 +271,7 @@ RenderState::RenderState(const OverlayID& startID, const OverlayID& pathID, cons
}
if (!_pathID.isNull()) {
_pathIgnoreRays = qApp->getOverlays().getProperty(_pathID, "ignoreRayIntersection").value.toBool();
_lineWidth = qApp->getOverlays().getProperty(_pathID, "lineWidth").value.toFloat();
}
if (!_endID.isNull()) {
_endDim = vec3FromVariant(qApp->getOverlays().getProperty(_endID, "dimensions").value);

View file

@ -43,6 +43,9 @@ public:
void setEndDim(const glm::vec3& endDim) { _endDim = endDim; }
const glm::vec3& getEndDim() const { return _endDim; }
void setLineWidth(const float& lineWidth) { _lineWidth = lineWidth; }
const float& getLineWidth() const { return _lineWidth; }
void deleteOverlays();
private:
@ -54,6 +57,7 @@ private:
bool _endIgnoreRays;
glm::vec3 _endDim;
float _lineWidth;
};

View file

@ -16,13 +16,11 @@
#include "Application.h"
const float DEFAULT_LINE_WIDTH = 1.0f;
const bool DEFAULT_IS_SOLID = false;
const bool DEFAULT_IS_DASHED_LINE = false;
Base3DOverlay::Base3DOverlay() :
SpatiallyNestable(NestableType::Overlay, QUuid::createUuid()),
_lineWidth(DEFAULT_LINE_WIDTH),
_isSolid(DEFAULT_IS_SOLID),
_isDashedLine(DEFAULT_IS_DASHED_LINE),
_ignoreRayIntersection(false),
@ -34,7 +32,6 @@ Base3DOverlay::Base3DOverlay() :
Base3DOverlay::Base3DOverlay(const Base3DOverlay* base3DOverlay) :
Overlay(base3DOverlay),
SpatiallyNestable(NestableType::Overlay, QUuid::createUuid()),
_lineWidth(base3DOverlay->_lineWidth),
_isSolid(base3DOverlay->_isSolid),
_isDashedLine(base3DOverlay->_isDashedLine),
_ignoreRayIntersection(base3DOverlay->_ignoreRayIntersection),
@ -153,12 +150,6 @@ void Base3DOverlay::setProperties(const QVariantMap& originalProperties) {
setLocalOrientation(quatFromVariant(properties["orientation"]));
needRenderItemUpdate = true;
}
if (properties["lineWidth"].isValid()) {
setLineWidth(properties["lineWidth"].toFloat());
needRenderItemUpdate = true;
}
if (properties["isSolid"].isValid()) {
setIsSolid(properties["isSolid"].toBool());
}
@ -225,9 +216,6 @@ QVariant Base3DOverlay::getProperty(const QString& property) {
if (property == "localRotation" || property == "localOrientation") {
return quatToVariant(getLocalOrientation());
}
if (property == "lineWidth") {
return _lineWidth;
}
if (property == "isSolid" || property == "isFilled" || property == "solid" || property == "filed") {
return _isSolid;
}

View file

@ -35,7 +35,6 @@ public:
// TODO: consider implementing registration points in this class
glm::vec3 getCenter() const { return getPosition(); }
float getLineWidth() const { return _lineWidth; }
bool getIsSolid() const { return _isSolid; }
bool getIsDashedLine() const { return _isDashedLine; }
bool getIsSolidLine() const { return !_isDashedLine; }
@ -44,7 +43,6 @@ public:
bool getDrawHUDLayer() const { return _drawHUDLayer; }
bool getIsGrabbable() const { return _isGrabbable; }
void setLineWidth(float lineWidth) { _lineWidth = lineWidth; }
void setIsSolid(bool isSolid) { _isSolid = isSolid; }
void setIsDashedLine(bool isDashedLine) { _isDashedLine = isDashedLine; }
void setIgnoreRayIntersection(bool value) { _ignoreRayIntersection = value; }
@ -80,7 +78,6 @@ protected:
virtual void setRenderTransform(const Transform& transform);
const Transform& getRenderTransform() const { return _renderTransform; }
float _lineWidth;
bool _isSolid;
bool _isDashedLine;
bool _ignoreRayIntersection;

View file

@ -6,7 +6,7 @@
//
// Distributed under the Apache License, Version 2.0.
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
//
////
#include "Line3DOverlay.h"
@ -33,8 +33,8 @@ Line3DOverlay::Line3DOverlay(const Line3DOverlay* line3DOverlay) :
_length = line3DOverlay->getLength();
_endParentID = line3DOverlay->getEndParentID();
_endParentJointIndex = line3DOverlay->getEndJointIndex();
_lineWidth = line3DOverlay->getLineWidth();
_glow = line3DOverlay->getGlow();
_glowWidth = line3DOverlay->getGlowWidth();
}
Line3DOverlay::~Line3DOverlay() {
@ -145,7 +145,7 @@ void Line3DOverlay::render(RenderArgs* args) {
geometryCache->renderDashedLine(*batch, start, end, colorv4, _geometryCacheID);
} else {
// renderGlowLine handles both glow = 0 and glow > 0 cases
geometryCache->renderGlowLine(*batch, start, end, colorv4, _glow, _glowWidth, _geometryCacheID);
geometryCache->renderGlowLine(*batch, start, end, colorv4, _glow, _lineWidth, _geometryCacheID);
}
}
}
@ -239,9 +239,9 @@ void Line3DOverlay::setProperties(const QVariantMap& originalProperties) {
}
}
auto glowWidth = properties["glowWidth"];
if (glowWidth.isValid()) {
setGlowWidth(glowWidth.toFloat());
auto lineWidth = properties["lineWidth"];
if (lineWidth.isValid()) {
setLineWidth(lineWidth.toFloat());
}
}
@ -261,6 +261,9 @@ QVariant Line3DOverlay::getProperty(const QString& property) {
if (property == "length") {
return QVariant(getLength());
}
if (property == "lineWidth") {
return _lineWidth;
}
return Base3DOverlay::getProperty(property);
}

View file

@ -13,6 +13,8 @@
#include "Base3DOverlay.h"
static const float DEFAULT_LINE_WIDTH = 0.02f;
class Line3DOverlay : public Base3DOverlay {
Q_OBJECT
using Parent = Base3DOverlay;
@ -31,8 +33,8 @@ public:
// getters
glm::vec3 getStart() const;
glm::vec3 getEnd() const;
const float& getLineWidth() const { return _lineWidth; }
const float& getGlow() const { return _glow; }
const float& getGlowWidth() const { return _glowWidth; }
// setters
void setStart(const glm::vec3& start);
@ -41,8 +43,8 @@ public:
void setLocalStart(const glm::vec3& localStart) { setLocalPosition(localStart); }
void setLocalEnd(const glm::vec3& localEnd);
void setLineWidth(const float& lineWidth) { _lineWidth = lineWidth; }
void setGlow(const float& glow) { _glow = glow; }
void setGlowWidth(const float& glowWidth) { _glowWidth = glowWidth; }
void setProperties(const QVariantMap& properties) override;
QVariant getProperty(const QString& property) override;
@ -70,8 +72,8 @@ private:
glm::vec3 _direction; // in parent frame
float _length { 1.0 }; // in parent frame
float _lineWidth { DEFAULT_LINE_WIDTH };
float _glow { 0.0 };
float _glowWidth { 0.0 };
int _geometryCacheID;
};

View file

@ -96,7 +96,6 @@ function rayCastTest() {
color: color,
alpha: 1,
visible: visible,
lineWidth: 2,
start: origin,
end: Vec3.sum(origin,Vec3.multiply(5,direction))
});

View file

@ -284,8 +284,7 @@
endParentJointIndex: yourJointIndex,
end: yourJointPosition,
color: identifyAvatarLineColor,
alpha: 1,
lineWidth: 1
alpha: 1
};
avatarIdentifiers[yourAvatarID] = identifierParams;

View file

@ -33,7 +33,6 @@ Script.include("/~/system/libraries/Xform.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -55,7 +54,6 @@ Script.include("/~/system/libraries/Xform.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -77,7 +75,6 @@ Script.include("/~/system/libraries/Xform.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID

View file

@ -25,7 +25,6 @@ Script.include("/~/system/libraries/controllers.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -47,7 +46,6 @@ Script.include("/~/system/libraries/controllers.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -69,7 +67,6 @@ Script.include("/~/system/libraries/controllers.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID

View file

@ -31,7 +31,6 @@
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawHUDLayer: true,
parentID: MyAvatar.SELF_ID
@ -53,7 +52,6 @@
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawHUDLayer: true,
parentID: MyAvatar.SELF_ID
@ -75,7 +73,6 @@
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawHUDLayer: true,
parentID: MyAvatar.SELF_ID

View file

@ -27,7 +27,6 @@ Script.include("/~/system/libraries/utils.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -49,7 +48,6 @@ Script.include("/~/system/libraries/utils.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -71,7 +69,6 @@ Script.include("/~/system/libraries/utils.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID

View file

@ -26,7 +26,6 @@ Script.include("/~/system/libraries/controllers.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -48,7 +47,6 @@ Script.include("/~/system/libraries/controllers.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -70,7 +68,6 @@ Script.include("/~/system/libraries/controllers.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID

View file

@ -26,7 +26,6 @@ Script.include("/~/system/libraries/controllers.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -48,7 +47,6 @@ Script.include("/~/system/libraries/controllers.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID
@ -70,7 +68,6 @@ Script.include("/~/system/libraries/controllers.js");
alpha: 1,
solid: true,
glow: 1.0,
lineWidth: 5,
ignoreRayIntersection: true, // always ignore this
drawInFront: true, // Even when burried inside of something, show it.
parentID: MyAvatar.SELF_ID

View file

@ -339,7 +339,6 @@ SelectionDisplay = (function() {
solid: grabberSolid,
visible: false,
dashed: false,
lineWidth: grabberLineWidth,
drawInFront: true,
borderSize: 1.4
};
@ -352,7 +351,6 @@ SelectionDisplay = (function() {
solid: grabberSolid,
visible: false,
dashed: false,
lineWidth: grabberLineWidth,
drawInFront: true,
borderSize: 1.4
};
@ -365,7 +363,6 @@ SelectionDisplay = (function() {
solid: grabberSolid,
visible: false,
dashed: false,
lineWidth: grabberLineWidth,
drawInFront: true,
borderSize: 1.4
};
@ -378,14 +375,12 @@ SelectionDisplay = (function() {
solid: grabberSolid,
visible: false,
dashed: false,
lineWidth: grabberLineWidth,
drawInFront: true,
borderSize: 1.4
};
var spotLightLineProperties = {
color: lightOverlayColor,
lineWidth: 1.5
color: lightOverlayColor
};
var highlightBox = Overlays.addOverlay("cube", {
@ -400,7 +395,6 @@ SelectionDisplay = (function() {
solid: false,
visible: false,
dashed: true,
lineWidth: 2.0,
ignoreRayIntersection: true, // this never ray intersects
drawInFront: true
});
@ -416,8 +410,7 @@ SelectionDisplay = (function() {
alpha: 1,
solid: false,
visible: false,
dashed: false,
lineWidth: 1.0
dashed: false
});
var selectionBoxes = [];
@ -466,7 +459,6 @@ SelectionDisplay = (function() {
// var normalLine = Overlays.addOverlay("line3d", {
// visible: true,
// lineWidth: 2.0,
// start: { x: 0, y: 0, z: 0 },
// end: { x: 0, y: 0, z: 0 },
// color: { red: 255, green: 255, blue: 0 },
@ -656,7 +648,6 @@ SelectionDisplay = (function() {
var xRailOverlay = Overlays.addOverlay("line3d", {
visible: false,
lineWidth: 1.0,
start: Vec3.ZERO,
end: Vec3.ZERO,
color: {
@ -668,7 +659,6 @@ SelectionDisplay = (function() {
});
var yRailOverlay = Overlays.addOverlay("line3d", {
visible: false,
lineWidth: 1.0,
start: Vec3.ZERO,
end: Vec3.ZERO,
color: {
@ -680,7 +670,6 @@ SelectionDisplay = (function() {
});
var zRailOverlay = Overlays.addOverlay("line3d", {
visible: false,
lineWidth: 1.0,
start: Vec3.ZERO,
end: Vec3.ZERO,
color: {
@ -693,7 +682,6 @@ SelectionDisplay = (function() {
var rotateZeroOverlay = Overlays.addOverlay("line3d", {
visible: false,
lineWidth: 2.0,
start: Vec3.ZERO,
end: Vec3.ZERO,
color: {
@ -706,7 +694,6 @@ SelectionDisplay = (function() {
var rotateCurrentOverlay = Overlays.addOverlay("line3d", {
visible: false,
lineWidth: 2.0,
start: Vec3.ZERO,
end: Vec3.ZERO,
color: {
@ -1788,7 +1775,6 @@ SelectionDisplay = (function() {
y: distance,
z: 1
},
lineWidth: 1.5,
rotation: rotation,
visible: true
});
@ -1994,7 +1980,6 @@ SelectionDisplay = (function() {
solid: false,
visible: false,
dashed: false,
lineWidth: 1.0,
ignoreRayIntersection: true
}));
}

View file

@ -189,7 +189,6 @@ function HighlightedEntity(id, entityProperties) {
green: 0x91,
blue: 0x29
},
lineWidth: 1.0,
ignoreRayIntersection: true,
drawInFront: false // Arguable. For now, let's not distract with mysterious wires around the scene.
});

View file

@ -350,8 +350,7 @@
end: ZERO_VECTOR,
color: { red: 255, green: 0, blue: 0},
alpha: 1,
visible: true,
lineWidth: 2
visible: true
});
},
};

View file

@ -329,7 +329,6 @@
y: 0,
z: 0
}, lineVectors[0]],
lineWidth: 5,
color: this.stringData.currentColor
});
@ -339,7 +338,6 @@
y: 0,
z: 0
}, lineVectors[1]],
lineWidth: 5,
color: this.stringData.currentColor
});

View file

@ -125,7 +125,6 @@ function createPreNotchString() {
y: 0,
z: 0
}, downOffset)],
lineWidth: 5,
color: {
red: 255,
green: 255,

View file

@ -450,7 +450,6 @@
y: 0,
z: 0
}, downOffset)],
lineWidth: 5,
color: {
red: 255,
green: 255,

View file

@ -427,7 +427,6 @@ MasterReset = function() {
y: 0,
z: 0
}, downOffset)],
lineWidth: 5,
color: {
red: 255,
green: 255,

View file

@ -346,8 +346,7 @@
end: { x: 0, y: 0, z: 0 },
color: COLORS.RED,
alpha: 1,
visible: true,
lineWidth: 2
visible: true
});
},
};

View file

@ -266,7 +266,6 @@
dimensions: { "x": 5, "y": 5, "z": 5 },
ignoreForCollisions: 1,
linePoints: [ { "x": 0, "y": 0, "z": 0 }, { "x": 0, "y": -1.2, "z": 0 } ],
lineWidth: 5,
name: STRING_NAME,
parentID: this.entityID,
localPosition: { "x": 0, "y": 0.6, "z": 0.1 },
@ -287,7 +286,6 @@
resetStringToIdlePosition: function() {
Entities.editEntity(this.stringID, {
linePoints: [ { "x": 0, "y": 0, "z": 0 }, { "x": 0, "y": -1.2, "z": 0 } ],
lineWidth: 5,
localPosition: { "x": 0, "y": 0.6, "z": 0.1 },
localRotation: { "w": 1, "x": 0, "y": 0, "z": 0 },
});

View file

@ -99,7 +99,6 @@
lifetime: 360,
type: 'Line',
glow: 1.0,
lineWidth: 5,
alpha: 0.5,
ignoreRayIntersection: true,
drawInFront: true,

View file

@ -72,7 +72,6 @@ Laser = function (side) {
}
laserLine = Overlays.addOverlay("line3d", {
lineWidth: 5,
alpha: 1.0,
glow: 1.0,
ignoreRayIntersection: true,

View file

@ -408,7 +408,6 @@ function getControllerLocation(controllerHand) {
dimensions: { "x": 5, "y": 5, "z": 5 },
ignoreForCollisions: 1,
linePoints: [ { "x": 0, "y": 0, "z": 0 }, { "x": 0, "y": -1.2, "z": 0 } ],
lineWidth: 5,
color: { red: 153, green: 102, blue: 51 },
name: STRING_NAME,
parentID: this.entityID,
@ -430,7 +429,6 @@ function getControllerLocation(controllerHand) {
resetStringToIdlePosition: function() {
Entities.editEntity(this.stringID, {
linePoints: [ { "x": 0, "y": 0, "z": 0 }, { "x": 0, "y": -1.2, "z": 0 } ],
lineWidth: 5,
localPosition: { "x": 0, "y": 0.6, "z": 0.1 },
localRotation: { "w": 1, "x": 0, "y": 0, "z": 0 },
});