Commit graph

1671 commits

Author SHA1 Message Date
Grant Sanderson
ceac4fbe1a Fix up FillArrow 2024-08-21 15:58:57 -05:00
Grant Sanderson
22ee13a884 Have FillArrow take the place of StrokeArrow as the main Arrow 2024-08-21 14:52:54 -05:00
Grant Sanderson
eea8416d57 Default to allowing null lines, except for SVGPaths 2024-08-21 14:44:33 -05:00
Grant Sanderson
b3386ad7a7 Add an option for VMobject.add_line to add a null line 2024-08-21 14:29:40 -05:00
Grant Sanderson
c83d03aeb7 Simplify get_subpath_end_indices_from_points 2024-08-21 14:29:16 -05:00
Grant Sanderson
0a89725090 Tweaking what triggers refreshes 2024-08-21 13:57:54 -05:00
Grant Sanderson
0cb7a8f691 Only recompute subpath_end_indices as needed 2024-08-21 13:44:24 -05:00
Grant Sanderson
43f1704f69 Fix computation of joint_angles to handle zero division case 2024-08-21 13:44:00 -05:00
Grant Sanderson
941513d68c Only recompute VMobject.get_unit_normal as needed 2024-08-21 12:26:42 -05:00
Grant Sanderson
9a5386b022 Instead of passing in joint_products to stroke shader, just track joint_angles and pass in global unit normal 2024-08-21 11:59:48 -05:00
Grant Sanderson
748780378b Have stroke_behind default to True for VMobjects with fill and no stroke 2024-08-21 08:43:57 -05:00
Grant Sanderson
d0cb5b4eea Fix normal orientation on Surface 2024-08-20 14:47:47 -05:00
Grant Sanderson
35ce4c6704 Use Mobject.set_uniform in Mobject.set_shading 2024-08-20 14:44:48 -05:00
Grant Sanderson
7ddbd13e38 Ensure mobject uniforms get passed to ShaderWrapper on init 2024-08-20 14:44:09 -05:00
Grant Sanderson
304856e6e0 Remove indices_list argument on ShaderWrapper.read_in 2024-08-20 14:21:37 -05:00
Grant Sanderson
0a585b123c Use stash_mobject_pointers on Mobject.deepcopy 2024-08-20 12:15:37 -05:00
Grant Sanderson
910f28f52e Don't have a default flat stroke in set_style 2024-08-20 12:13:18 -05:00
Grant Sanderson
7474ae17b0 Change default to flat stroke, except in 3d situations 2024-08-20 11:52:05 -05:00
Grant Sanderson
b8931e7b9c When shader_id is updated, have ancestors mark data as changed 2024-08-20 11:36:37 -05:00
Grant Sanderson
0414f8786c Use Mobject.set_uniform to reassign flat_stroke 2024-08-20 11:35:42 -05:00
Grant Sanderson
e0191d81d9 Instead of tracking _shaders_initialized, just check if self.shader_wrapper is None 2024-08-20 10:48:43 -05:00
Grant Sanderson
0ac9ee1fbf Don't deepcopy ShaderWrapper 2024-08-20 10:15:53 -05:00
Grant Sanderson
b9645ad196 Only update shader wrapper when stroke_behind genuinely changes 2024-08-20 10:00:52 -05:00
Grant Sanderson
87ca6e56aa Don't treat font size as a uniform 2024-08-20 10:00:07 -05:00
Grant Sanderson
e61957a4e0 Fix wrong check for path_func in last commit 2024-08-20 09:25:30 -05:00
Grant Sanderson
a8ef9629eb More direct lerp in Mobject.interpolate 2024-08-20 09:10:33 -05:00
Grant Sanderson
f12b143d16 Unify get_shader_wrapper_list, and and better subdivide render groups by ShaderWrapper ids 2024-08-20 08:53:51 -05:00
Grant Sanderson
b288d5301e Get rid of cached _has_stroke and _has_fill parameters 2024-08-19 17:27:47 -05:00
Grant Sanderson
c064b11e2a Interleave base_point and unit_normal in the same array 2024-08-19 16:50:49 -05:00
Grant Sanderson
09d147c8ef Set default border width to 0.5, and keep it for opacities < 1 2024-08-19 14:35:19 -05:00
Grant Sanderson
a12fa0c03d Remove attributes from VMobject which are now handled in VShaderWrapper 2024-08-19 10:04:28 -05:00
Grant Sanderson
4174f314b4 Reorganize, and ensure get_shader_wrapper_list works for general Groups 2024-08-19 09:17:58 -05:00
Grant Sanderson
f2bca0045f Add border width and backstroke 2024-08-19 08:18:45 -05:00
Grant Sanderson
24b160f9f9 Update VMobject shader wrapper
Use a combined VBO
Render with TRIANGLE_STRIP, and ignore every other
2024-08-19 08:05:32 -05:00
Grant Sanderson
f9b9cf69fd Update so that vbo is not recreated on each from, but is read into 2024-08-17 07:11:56 -05:00
Grant Sanderson
0efa96e399 Just use L-inf norm for point equality 2024-08-16 16:18:37 -05:00
Grant Sanderson
ccc84f4ab1 Give Numbers a default border width 2024-08-16 15:21:29 -05:00
Grant Sanderson
bb42b66201 Include fill border width in style 2024-08-16 15:21:20 -05:00
Grant Sanderson
c20ce8d633 Have arrows default to flat stroke 2024-08-16 15:10:40 -05:00
Grant Sanderson
108db87087 Rather than ignoring border with for non-one opacity, go back to having set_fill default to setting 0 border width for intermediate opacities 2024-08-16 12:38:11 -05:00
Grant Sanderson
902a4f264e Add white space after assert statements 2024-08-16 12:15:55 -05:00
Grant Sanderson
3f15715ff1 Use _data_defaults for initializing fill border width 2024-08-16 12:10:37 -05:00
Grant Sanderson
174f318602 Push _data_default initialization into init_data 2024-08-16 12:10:07 -05:00
Grant Sanderson
430a88cf13 Change default border width to 0, and only draw it for opacity 1 2024-08-16 12:05:47 -05:00
Grant Sanderson
59235d3eed Include flat stroke in get_style, set_style, match_style 2024-08-15 15:37:55 -05:00
Grant Sanderson
1ff758dea8 Remove (no longer necessary) specifications of non-flat stroke for 3d things 2024-08-07 15:06:10 -05:00
Grant Sanderson
bf43a648a4 Allow for setting flat stroke in VMobject.set_stroke 2024-08-07 14:54:37 -05:00
Grant Sanderson
0dcf630222 Change default to non-flat stroke rendering 2024-08-07 11:23:37 -05:00
Grant Sanderson
44ec9933b7 Small format fix 2024-08-06 10:39:23 -05:00
Grant Sanderson
4ff61ed561 Default approximate smoothing (non-approx has a bug in 3d) 2024-08-06 10:27:35 -05:00