Max Cahill
a92a0c0351
Reworked aabb vs point and circle methods
2021-06-08 11:51:18 +10:00
Max Cahill
99c496df24
Added maxcomp and mincomp and specified major/minor to always mask an axis - removed farthest and closest because they were under-specified as a result (and questionable utility)
2021-06-08 11:50:54 +10:00
Max Cahill
a73a44f424
Added vec2:signi and vec2:sign to get the sign of each component
2021-06-08 11:49:29 +10:00
Max Cahill
bcd94c134e
Added vec2 support for multiple concurrent release to pool
2021-06-08 11:48:58 +10:00
Aweptimum
b5d3707939
Added aabb_circle_collide routine, modify aabb_point_collide
...
If circle center within aabb, calls aabb_point collide. Then, adds to the msv the difference between the closest point on the aabb to the circle and the closest point on circle to closest point on the aabb.
It failed when the circle center was exactly on the aabb edges, so COLLIDE_EPS was added to the apo_normal in aabb_point_collide to force the point off the edge. As such, the "nudge" section was removed. This should definitely be reviewed.
2021-05-10 12:29:37 -04:00
Aweptimum
06ca04bde7
Added aabb_circle_overlap
...
When the distance between the circle's center and the closest point on the aabb is less than the circle radius, returns true.
2021-05-10 11:55:51 -04:00
Aweptimum
bfee65762e
Added helper function for aabb_circle routines
...
Clamps point coords to the dimensions of an aabb to get the nearest point on the aabb. Returns two integers to avoid garbage.
2021-05-10 11:55:00 -04:00
Aweptimum
9d1e563796
Added aabb_point_collide()
...
Pushes point out along minimum axis. Nudges it out with COLLIDE_EPS added to the msv.
2021-05-10 11:53:40 -04:00
Aweptimum
bc014db183
Added min/max ops to vec2
...
major/minor return the component with the max/min value.
farthest/closest return the component with the max/min magnitude
2021-05-10 11:52:08 -04:00
Max Cahill
89ecd4258e
Merge remote-tracking branch 'origin/master'
...
# Conflicts:
# tablex.lua
2021-05-04 21:07:35 +10:00
Max Cahill
5cd33398a5
[added] tablex.swap
2021-05-04 20:52:47 +10:00
Max Cahill
d9da4749e2
[added] some randomness helper functions to mathx
2021-05-04 11:41:22 +10:00
Max Cahill
7c975e8c4a
[removed] prime stuff from mathx; hard to justify the filesize
2021-05-04 11:40:20 +10:00
Max Cahill
bc7754ae0b
[modified] minor refactor of how tablex.clear
is or isn't initialised as needed
2021-05-04 10:38:31 +10:00
Max Cahill
c2a9d39bcf
[added] set.clear
which does what you'd expect
2021-05-04 10:38:07 +10:00
Max Cahill
97eac9c51a
Merge branch 'feature/insert-sorted-binary-search'
2021-04-30 11:47:03 +10:00
Max Cahill
826a2797c8
[modified] refactored insert_sorted to get PR #18 merged
2021-04-30 11:46:51 +10:00
Max Cahill
5601d9415b
Merge remote-tracking branch 'origin/master' into feature/insert-sorted-binary-search
2021-04-30 11:22:11 +10:00
Alvaro Frias Garay
5ed6d68f6c
added binary search to insert_sorted
...
Added method tablex.is_sorted
2021-04-15 21:09:04 -03:00
Max Cahill
87834e9267
[modified] sequence wrappers a bit more; exposed functional query interface
2021-04-15 10:31:06 +10:00
Max Cahill
39268148d8
Merge remote-tracking branch 'origin/master'
2021-04-15 10:22:37 +10:00
Max Cahill
d1b7e77b8a
[modified] vec2
to support direct use for conversion in functional.map
2021-04-15 10:22:26 +10:00
Max Cahill
d476bc9c9c
[modified] how sequence
binds the functional interface to make binding new methods less error prone and shorter
2021-04-15 10:21:41 +10:00
Max Cahill
49505af37e
Merge PR #17
2021-04-14 17:07:14 +10:00
Max Cahill
62957a9270
[modified] PR #17 a little; simplified various unneeded sections and added comments
2021-04-14 17:06:31 +10:00
Max Cahill
c840bd01a5
[added] more intersection/resolution helpers
2021-04-14 13:32:14 +10:00
Max Cahill
bfad0baba9
[added] experimental intersect.bounce_off
(needs to be verified)
2021-04-13 15:39:36 +10:00
Max Cahill
ab0839430a
[fixed] broken intersect.circle_circle_collide result
2021-04-13 15:38:52 +10:00
Alvaro Frias
dbadd9af83
Refactored rtrim and ltrim to use _whitespace_bytes table
2021-04-12 12:38:03 -03:00
Max Cahill
6eb979a68c
[fixed] off-by-one in functional.cycle
2021-04-12 16:13:46 +10:00
Max Cahill
4f380d8afe
[added] functional.stitch
and functional.cycle
specialised mapping variants
2021-04-12 13:04:08 +10:00
Alvaro Frias Garay
6042e3a705
Renamed variable properly
2021-04-07 14:09:40 -03:00
Alvaro Frias Garay
fb4c187347
Added ends_with method to stringx
2021-04-07 13:59:42 -03:00
Alvaro Frias Garay
e8bb432999
Added ltrim and rtrim methods
...
complementary methods to trim
2021-04-05 23:43:35 -03:00
Max Cahill
41985928d2
[modified] timer
to support changing the time in reset
2021-03-12 21:44:09 +11:00
Max Cahill
89ad4c2dda
[added] pubsub
and timer
modules
2021-03-12 21:23:54 +11:00
Max Cahill
16c183ec31
[added] tablex.take_random
which is like pick_random
but removes the element
2021-03-09 20:07:41 +11:00
Max Cahill
24bcc78616
[added] tablex.append_inplace
and tablex.append
can both take variable numbers of tables
2021-03-05 12:07:28 +11:00
Max Cahill
290b39236c
[modified] stringx.starts_with to not generate garbage
2021-03-02 11:47:28 +11:00
Max Cahill
dfd1a1c69f
[added] stringx.starts_with
2021-03-02 11:45:19 +11:00
Max Cahill
eef0d8d126
Merge pull request #15 from pakeke-constructor/patch-1
...
Fixed `start` state inclusion in state_machine
2021-01-25 10:41:37 +11:00
pakeke-constructor
f4a924aced
Fixed start
state inclusion in state_machine
2021-01-25 12:22:37 +13:00
Max Cahill
7185a91fc5
[dev] note about oklab colour space
2021-01-15 16:22:01 +11:00
Max Cahill
d5938f098e
Happy new year!
2021-01-08 17:06:44 +11:00
Max Cahill
9bb2f0367d
[modified] readme
2021-01-05 15:20:55 +11:00
Max Cahill
70d6a99891
[modified] state machine api; no longer gets the machine on all callbacks.
...
benefit is being able to use a plain old class with `:update(dt)` as a state, and therefore nest state machines directly without a wrapper.
2020-12-01 15:33:22 +11:00
Max Cahill
f3038d5bc0
Merge pull request #13 from speakk/patch-1
...
Mention varargs being passed into state callbacks
2020-12-01 09:15:33 +11:00
speak
af60cf26cf
Mention varargs being passed into state callbacks
2020-11-30 23:04:19 +02:00
Max Cahill
8be736d992
[added] stringx.apply_template for "$template_var" containing strings
2020-11-19 17:18:38 +11:00
Max Cahill
01ffdc09cd
[added] stringx.trim
2020-11-12 16:36:06 +11:00