diff options
author | Dahlia Trimble | 2008-09-01 08:19:47 +0000 |
---|---|---|
committer | Dahlia Trimble | 2008-09-01 08:19:47 +0000 |
commit | f4035840d26ee7cdc7eea3dae0a52f22632aaaa0 (patch) | |
tree | 9fa645de03db157abb2715c41252d657aa88f06c /OpenSim/Region | |
parent | Improvement in mesh accuracy in X Top Shear parameter for circular path prims (diff) | |
download | opensim-SC-f4035840d26ee7cdc7eea3dae0a52f22632aaaa0.zip opensim-SC-f4035840d26ee7cdc7eea3dae0a52f22632aaaa0.tar.gz opensim-SC-f4035840d26ee7cdc7eea3dae0a52f22632aaaa0.tar.bz2 opensim-SC-f4035840d26ee7cdc7eea3dae0a52f22632aaaa0.tar.xz |
compensates profile placement effects of Y hole size on X top shear for circular path prim meshes
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/Physics/Meshing/PrimMesher.cs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/OpenSim/Region/Physics/Meshing/PrimMesher.cs b/OpenSim/Region/Physics/Meshing/PrimMesher.cs index 26b3f02..d0a09ff 100644 --- a/OpenSim/Region/Physics/Meshing/PrimMesher.cs +++ b/OpenSim/Region/Physics/Meshing/PrimMesher.cs | |||
@@ -736,6 +736,7 @@ namespace OpenSim.Region.Physics.Meshing | |||
736 | float pathLength = this.pathCutEnd - this.pathCutBegin; | 736 | float pathLength = this.pathCutEnd - this.pathCutBegin; |
737 | float totalSkew = this.skew * 2.0f * pathLength; | 737 | float totalSkew = this.skew * 2.0f * pathLength; |
738 | float skewStart = this.pathCutBegin * 2.0f * this.skew - this.skew; | 738 | float skewStart = this.pathCutBegin * 2.0f * this.skew - this.skew; |
739 | float xOffsetTopShearXFactor = this.topShearX * (0.25f + 0.5f * (0.5f - this.holeSizeY)); | ||
739 | 740 | ||
740 | // It's not quite clear what pushY (Y top shear) does, but subtracting it from the start and end | 741 | // It's not quite clear what pushY (Y top shear) does, but subtracting it from the start and end |
741 | // angles appears to approximate it's effects on path cut. Likewise, adding it to the angle used | 742 | // angles appears to approximate it's effects on path cut. Likewise, adding it to the angle used |
@@ -822,8 +823,8 @@ namespace OpenSim.Region.Physics.Meshing | |||
822 | float twist = twistBegin + twistTotal * percentOfPath; | 823 | float twist = twistBegin + twistTotal * percentOfPath; |
823 | 824 | ||
824 | float xOffset = 0.5f * (skewStart + totalSkew * percentOfAngles); | 825 | float xOffset = 0.5f * (skewStart + totalSkew * percentOfAngles); |
826 | xOffset += (float)Math.Sin(angle) * xOffsetTopShearXFactor; | ||
825 | 827 | ||
826 | xOffset += (float)Math.Sin(angle) * this.topShearX * 0.225f; | ||
827 | float yOffset = (float)Math.Cos(angle) * (0.5f - yPathScale) * radiusScale; | 828 | float yOffset = (float)Math.Cos(angle) * (0.5f - yPathScale) * radiusScale; |
828 | 829 | ||
829 | float zOffset = (float)Math.Sin(angle + this.topShearY * 0.9f) * (0.5f - yPathScale) * radiusScale; | 830 | float zOffset = (float)Math.Sin(angle + this.topShearY * 0.9f) * (0.5f - yPathScale) * radiusScale; |