Skip to content

Commit 7d5da59

Browse files
committed
add vizlib.draw_point(pos, options)
1 parent b2b9a21 commit 7d5da59

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

API.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
- [`vizlib.select_color()`](#vizlibselect_color)
1111
- [`vizlib.random_color()`](#vizlibrandom_color)
1212
- [`vizlib.erase_shape(shape)`](#vizliberase_shapeshape)
13+
- [`vizlib.draw_point(pos, options)`](#vizlibdraw_pointpos-options)
1314
- [`vizlib.draw_circle(pos, radius, axis, options)`](#vizlibdraw_circlepos-radius-axis-options)
1415
- [`vizlib.draw_sphere(pos, radius, options)`](#vizlibdraw_spherepos-radius-options)
1516
- [`vizlib.draw_line(pos1, pos2, options)`](#vizlibdraw_linepos1-pos2-options)
@@ -86,6 +87,14 @@ Useful for removing shapes created with `options.infinite = true`.
8687

8788
## Drawing
8889

90+
#### **`vizlib.draw_point(pos, options)`**
91+
92+
Draws a point (one slightly bigger particle).
93+
94+
**Arguments**
95+
- `pos` - Vector. The position of the point.
96+
- `options` - Table. See [`options`](#options) above.
97+
8998
#### **`vizlib.draw_circle(pos, radius, axis, options)`**
9099

91100
Draws an approximate circle on a particular axis.

api.lua

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,21 @@ local function make_line(pos1, pos2, color, name, time, density)
114114
})
115115
end
116116

117+
local function make_point(pos, color, name, time, density)
118+
return minetest.add_particlespawner({
119+
playername = name,
120+
time = time,
121+
amount = density * 2,
122+
minpos = pos,
123+
maxpos = pos,
124+
minexptime = 2.0,
125+
maxexptime = 2.0,
126+
texture = "vizlib_particle.png^[multiply:"..color,
127+
glow = 14,
128+
size = 1.5,
129+
})
130+
end
131+
117132
--------------------------------------------------
118133
-- API Functions. See API.md for details.
119134
--------------------------------------------------
@@ -129,6 +144,12 @@ function vizlib.random_color()
129144
return string.format("#%02x%02x%02x", r, g, b)
130145
end
131146

147+
function vizlib.draw_point(pos, options)
148+
local color, name, time, density = get_valid_options(options)
149+
local ids = make_point(pos, color, name, time, density)
150+
return make_shape(name, time, ids)
151+
end
152+
132153
function vizlib.draw_circle(pos, radius, axis, options)
133154
local color, name, time, density = get_valid_options(options)
134155
local ids = {}

0 commit comments

Comments
 (0)