Difference between revisions of "MIST getUnitsInPolygon"
From DCS World Wiki - Hoggitworld.com
m (Grimes moved page MIST getUnitsInPoly to MIST getUnitsInPolygon without leaving a redirect: Mixup on the function and page name.) |
|||
| Line 1: | Line 1: | ||
{{Mission Scripting | {{Mission Scripting | ||
| − | |fName= mist. | + | |fName= mist.getUnitsInPolygon| |
|vNum = Mist 3.5 | |vNum = Mist 3.5 | ||
| Line 35: | Line 35: | ||
|rtnExamples= unitNameTable | |rtnExamples= unitNameTable | ||
| − | |example= < | + | |example= The following will generate a message of the unit names of blue helicopters that are inside a polygon zone designated by the points of a route belonging to a group "weirdShapeLZ". |
| − | do | + | <pre> |
| − | + | ||
| − | end | + | local LZ = mist.getGroupPoints("weirdShapeLZ") |
| − | </ | + | local choppas = mist.makeUnitTable({"[blue][helicopter]"}) |
| + | local inZone = mist.getUnitsInPolygon(choppas , LZ) | ||
| + | local msg = {"The following helicopters are in the landing zone: "} | ||
| + | for i = 1, #inZone do | ||
| + | msg[#msg+1] = inZone[i]:getName() | ||
| + | msg[#msg+1] = "\n" | ||
| + | end | ||
| + | trigger.action.outText(table.concat(msg), 20) | ||
| + | </pre> | ||
|notes= Units must be activated to be counted as inside the zone. | |notes= Units must be activated to be counted as inside the zone. | ||
| Line 46: | Line 54: | ||
}} | }} | ||
| − | [[Category: MIST| | + | [[Category: MIST|getUnitsInPolygon]] |
Latest revision as of 23:08, 19 January 2023
mist.getUnitsInPolygon
| Added with: Mist 3.5 |
| Description |
| Returns a table of units from the table unitNameTable that are inside of the polygon zone. |
| Syntax |
| table mist.getUnitsInPolygon(table unitNameTable ,table poly , number maxAlt ) |
| Valid Input Values: |
| unitNameTable: mist.makeUnitTable({"[blue][helicopter]"})
poly: mist.getGroupPoints('polyPath1') maxAlt: 200 |
| Return value: |
| table |
| Return example: |
| unitNameTable |
| Usage Examples: |
The following will generate a message of the unit names of blue helicopters that are inside a polygon zone designated by the points of a route belonging to a group "weirdShapeLZ".
local LZ = mist.getGroupPoints("weirdShapeLZ")
local choppas = mist.makeUnitTable({"[blue][helicopter]"})
local inZone = mist.getUnitsInPolygon(choppas , LZ)
local msg = {"The following helicopters are in the landing zone: "}
for i = 1, #inZone do
msg[#msg+1] = inZone[i]:getName()
msg[#msg+1] = "\n"
end
trigger.action.outText(table.concat(msg), 20)
|
| Notes: |
| Units must be activated to be counted as inside the zone. |
| Related Functions |
| makeUnitTable, getRandPointInCircle, getRandomPointInZone, getRandomPointInPoly, isTerrainValid, terrainHeightDiff, getUnitsInZones, getUnitsInMovingZones, pointInPolygon, getUnitsInPolygon, getDeadMapObjsInZones, getDeadMapObjsInPolygonZone, getUnitsLOS, random, randomizeNumTable, getAvgPoint, getQFE, getWindBearingAndVel, getPathLength, getPathInSegments, getPointAtDistanceOnPath, projectPoint, getGroupsByAttribute, , getUnitsByAttribute, mapValue, |
