mirror of
https://github.com/CommunityOx/ox_lib.git
synced 2026-08-19 07:56:02 +01:00
refactior(zones): make makeTriangles available outside of getTriangles
This commit is contained in:
@@ -1,6 +1,17 @@
|
|||||||
local glm = require 'glm'
|
local glm = require 'glm'
|
||||||
Zones = {}
|
Zones = {}
|
||||||
|
|
||||||
|
local function makeTriangles(t)
|
||||||
|
local t1, t2
|
||||||
|
if t[3] and t[4] then
|
||||||
|
t1 = mat(t[1], t[2], t[3])
|
||||||
|
t2 = mat(t[2], t[3], t[4])
|
||||||
|
else
|
||||||
|
t1 = mat(t[1], t[2], t[3] or t[4])
|
||||||
|
end
|
||||||
|
return t1, t2
|
||||||
|
end
|
||||||
|
|
||||||
local function getTriangles(polygon)
|
local function getTriangles(polygon)
|
||||||
local extremes = { polygon.projectToAxis(polygon, vec(1, 0, 0)) }
|
local extremes = { polygon.projectToAxis(polygon, vec(1, 0, 0)) }
|
||||||
|
|
||||||
@@ -81,21 +92,6 @@ local function getTriangles(polygon)
|
|||||||
return a.x < b.x
|
return a.x < b.x
|
||||||
end
|
end
|
||||||
|
|
||||||
local function makeTriangles(t)
|
|
||||||
if t[3] and t[4] then
|
|
||||||
triangles[#triangles + 1] = mat(t[1], t[2], t[3])
|
|
||||||
triangles[#triangles + 1] = mat(t[2], t[3], t[4])
|
|
||||||
for i = 1, #t do
|
|
||||||
points[t[i]].uses += 1
|
|
||||||
end
|
|
||||||
else
|
|
||||||
triangles[#triangles + 1] = mat(t[1], t[2], t[3] or t[4])
|
|
||||||
for k, v in pairs(t) do
|
|
||||||
points[v].uses += 2
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
for i = 1, #sides do
|
for i = 1, #sides do
|
||||||
local side = sides[i]
|
local side = sides[i]
|
||||||
|
|
||||||
@@ -189,7 +185,18 @@ local function getTriangles(polygon)
|
|||||||
end
|
end
|
||||||
|
|
||||||
if c or d then
|
if c or d then
|
||||||
makeTriangles({a, b, c, d})
|
local t = {a, b, c, d}
|
||||||
|
nTriangles = #triangles
|
||||||
|
triangles[nTriangles + 1], triangles[nTriangles + 2] = makeTriangles(t)
|
||||||
|
if c and d then
|
||||||
|
for i = 1, #t do
|
||||||
|
points[t[i]].uses += 1
|
||||||
|
end
|
||||||
|
else
|
||||||
|
for k, v in pairs(t) do
|
||||||
|
points[v].uses += 2
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user