mirror of
https://github.com/overte-org/overte.git
synced 2025-08-09 10:29:01 +02:00
Removed rest of orbit/pan code in editVoxels.js
This commit is contained in:
parent
3721ce8e43
commit
53eaea6a22
1 changed files with 63 additions and 73 deletions
|
@ -32,8 +32,6 @@ var MIN_PASTE_VOXEL_SCALE = .256;
|
||||||
var zFightingSizeAdjust = 0.002; // used to adjust preview voxels to prevent z fighting
|
var zFightingSizeAdjust = 0.002; // used to adjust preview voxels to prevent z fighting
|
||||||
var previewLineWidth = 1.5;
|
var previewLineWidth = 1.5;
|
||||||
|
|
||||||
var oldMode = Camera.getMode();
|
|
||||||
var trackAsOrbitOrPan = false;
|
|
||||||
var isAdding = false;
|
var isAdding = false;
|
||||||
var isExtruding = false;
|
var isExtruding = false;
|
||||||
var extrudeDirection = { x: 0, y: 0, z: 0 };
|
var extrudeDirection = { x: 0, y: 0, z: 0 };
|
||||||
|
@ -614,8 +612,6 @@ function showPreviewVoxel() {
|
||||||
var guidePosition;
|
var guidePosition;
|
||||||
if (trackAsRecolor || recolorToolSelected || trackAsEyedropper || eyedropperToolSelected) {
|
if (trackAsRecolor || recolorToolSelected || trackAsEyedropper || eyedropperToolSelected) {
|
||||||
Overlays.editOverlay(voxelPreview, { visible: true });
|
Overlays.editOverlay(voxelPreview, { visible: true });
|
||||||
} else if (trackAsOrbitOrPan) {
|
|
||||||
Overlays.editOverlay(voxelPreview, { visible: false });
|
|
||||||
} else if (voxelToolSelected && !isExtruding) {
|
} else if (voxelToolSelected && !isExtruding) {
|
||||||
Overlays.editOverlay(voxelPreview, { visible: true });
|
Overlays.editOverlay(voxelPreview, { visible: true });
|
||||||
} else if (isExtruding) {
|
} else if (isExtruding) {
|
||||||
|
@ -706,15 +702,12 @@ function showPreviewGuides() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function trackMouseEvent(event) {
|
function trackMouseEvent(event) {
|
||||||
if (!trackAsOrbitOrPan) {
|
trackLastMouseX = event.x;
|
||||||
trackLastMouseX = event.x;
|
trackLastMouseY = event.y;
|
||||||
trackLastMouseY = event.y;
|
trackAsDelete = event.isControl;
|
||||||
trackAsDelete = event.isControl;
|
trackAsRecolor = event.isShifted;
|
||||||
trackAsRecolor = event.isShifted;
|
trackAsEyedropper = event.isMeta;
|
||||||
trackAsEyedropper = event.isMeta;
|
showPreviewGuides();
|
||||||
trackAsOrbitOrPan = event.isAlt; // TODO: double check this...??
|
|
||||||
showPreviewGuides();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function trackKeyPressEvent(event) {
|
function trackKeyPressEvent(event) {
|
||||||
|
@ -789,67 +782,64 @@ function mousePressEvent(event) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// no clicking on overlays while in panning mode
|
var clickedOnSomething = false;
|
||||||
if (!trackAsOrbitOrPan) {
|
var clickedOverlay = Overlays.getOverlayAtPoint({x: event.x, y: event.y});
|
||||||
var clickedOnSomething = false;
|
|
||||||
var clickedOverlay = Overlays.getOverlayAtPoint({x: event.x, y: event.y});
|
// If the user clicked on the thumb, handle the slider logic
|
||||||
|
if (clickedOverlay == thumb) {
|
||||||
// If the user clicked on the thumb, handle the slider logic
|
isMovingSlider = true;
|
||||||
if (clickedOverlay == thumb) {
|
thumbClickOffsetX = event.x - (sliderX + thumbX); // this should be the position of the mouse relative to the thumb
|
||||||
isMovingSlider = true;
|
clickedOnSomething = true;
|
||||||
thumbClickOffsetX = event.x - (sliderX + thumbX); // this should be the position of the mouse relative to the thumb
|
|
||||||
clickedOnSomething = true;
|
Overlays.editOverlay(thumb, { imageURL: toolIconUrl + "voxel-size-slider-handle.svg", });
|
||||||
|
|
||||||
Overlays.editOverlay(thumb, { imageURL: toolIconUrl + "voxel-size-slider-handle.svg", });
|
} else if (clickedOverlay == voxelTool) {
|
||||||
|
voxelToolSelected = true;
|
||||||
} else if (clickedOverlay == voxelTool) {
|
recolorToolSelected = false;
|
||||||
voxelToolSelected = true;
|
eyedropperToolSelected = false;
|
||||||
recolorToolSelected = false;
|
moveTools();
|
||||||
eyedropperToolSelected = false;
|
clickedOnSomething = true;
|
||||||
moveTools();
|
} else if (clickedOverlay == recolorTool) {
|
||||||
clickedOnSomething = true;
|
voxelToolSelected = false;
|
||||||
} else if (clickedOverlay == recolorTool) {
|
recolorToolSelected = true;
|
||||||
voxelToolSelected = false;
|
eyedropperToolSelected = false;
|
||||||
recolorToolSelected = true;
|
moveTools();
|
||||||
eyedropperToolSelected = false;
|
clickedOnSomething = true;
|
||||||
moveTools();
|
} else if (clickedOverlay == eyedropperTool) {
|
||||||
clickedOnSomething = true;
|
voxelToolSelected = false;
|
||||||
} else if (clickedOverlay == eyedropperTool) {
|
recolorToolSelected = false;
|
||||||
voxelToolSelected = false;
|
eyedropperToolSelected = true;
|
||||||
recolorToolSelected = false;
|
moveTools();
|
||||||
eyedropperToolSelected = true;
|
clickedOnSomething = true;
|
||||||
moveTools();
|
} else if (clickedOverlay == slider) {
|
||||||
clickedOnSomething = true;
|
|
||||||
} else if (clickedOverlay == slider) {
|
if (event.x < sliderX + minThumbX) {
|
||||||
|
thumbX -= thumbDeltaPerStep;
|
||||||
if (event.x < sliderX + minThumbX) {
|
calcScaleFromThumb(thumbX);
|
||||||
thumbX -= thumbDeltaPerStep;
|
|
||||||
calcScaleFromThumb(thumbX);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (event.x > sliderX + maxThumbX) {
|
|
||||||
thumbX += thumbDeltaPerStep;
|
|
||||||
calcScaleFromThumb(thumbX);
|
|
||||||
}
|
|
||||||
|
|
||||||
moveTools();
|
|
||||||
clickedOnSomething = true;
|
|
||||||
} else {
|
|
||||||
// if the user clicked on one of the color swatches, update the selectedSwatch
|
|
||||||
for (s = 0; s < numColors; s++) {
|
|
||||||
if (clickedOverlay == swatches[s]) {
|
|
||||||
whichColor = s;
|
|
||||||
moveTools();
|
|
||||||
clickedOnSomething = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (clickedOnSomething) {
|
|
||||||
return; // no further processing
|
if (event.x > sliderX + maxThumbX) {
|
||||||
|
thumbX += thumbDeltaPerStep;
|
||||||
|
calcScaleFromThumb(thumbX);
|
||||||
|
}
|
||||||
|
|
||||||
|
moveTools();
|
||||||
|
clickedOnSomething = true;
|
||||||
|
} else {
|
||||||
|
// if the user clicked on one of the color swatches, update the selectedSwatch
|
||||||
|
for (s = 0; s < numColors; s++) {
|
||||||
|
if (clickedOverlay == swatches[s]) {
|
||||||
|
whichColor = s;
|
||||||
|
moveTools();
|
||||||
|
clickedOnSomething = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (clickedOnSomething) {
|
||||||
|
return; // no further processing
|
||||||
|
}
|
||||||
|
|
||||||
// TODO: does any of this stuff need to execute if we're panning or orbiting?
|
// TODO: does any of this stuff need to execute if we're panning or orbiting?
|
||||||
trackMouseEvent(event); // used by preview support
|
trackMouseEvent(event); // used by preview support
|
||||||
mouseX = event.x;
|
mouseX = event.x;
|
||||||
|
@ -1072,7 +1062,7 @@ function mouseMoveEvent(event) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (!trackAsOrbitOrPan && isMovingSlider) {
|
if (isMovingSlider) {
|
||||||
thumbX = (event.x - thumbClickOffsetX) - sliderX;
|
thumbX = (event.x - thumbClickOffsetX) - sliderX;
|
||||||
if (thumbX < minThumbX) {
|
if (thumbX < minThumbX) {
|
||||||
thumbX = minThumbX;
|
thumbX = minThumbX;
|
||||||
|
@ -1082,7 +1072,7 @@ function mouseMoveEvent(event) {
|
||||||
}
|
}
|
||||||
calcScaleFromThumb(thumbX);
|
calcScaleFromThumb(thumbX);
|
||||||
|
|
||||||
} else if (!trackAsOrbitOrPan && isAdding) {
|
} else if (isAdding) {
|
||||||
// Watch the drag direction to tell which way to 'extrude' this voxel
|
// Watch the drag direction to tell which way to 'extrude' this voxel
|
||||||
if (!isExtruding) {
|
if (!isExtruding) {
|
||||||
var pickRay = Camera.computePickRay(event.x, event.y);
|
var pickRay = Camera.computePickRay(event.x, event.y);
|
||||||
|
|
Loading…
Reference in a new issue