techhub.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A hub primarily for passionate technologists, but everyone is welcome

Administered by:

Server stats:

4.9K
active users

#NURBS

0 posts0 participants0 posts today
pafurijaz<p>After years, we’re still revisiting a new <a href="https://mastodon.social/tags/GSoC" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GSoC</span></a> proposal to implement <a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> functions in <a href="https://mastodon.social/tags/Blender" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Blender</span></a>, another ambitious project. I’m skeptical: wouldn’t it be better to leverage existing tools like FreeCAD’s <a href="https://mastodon.social/tags/OCCT" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OCCT</span></a> kernel and wrappers such as PythonOCC, which already provide ready-to-use solutions? A native implementation would require advanced mathematical and programming expertise, which a beginner (still learning C++) would struggle to master in just a few weeks of development. <a href="https://mastodon.social/tags/b3d" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>b3d</span></a> <a href="https://mastodon.social/tags/CAD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CAD</span></a></p>
pafurijaz<p>A <a href="https://mastodon.social/tags/CAD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CAD</span></a> model made with <a href="https://mastodon.social/tags/Plasticity" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Plasticity</span></a> by Kuechmeister Swagger a German user with great skill in Plasticity and <a href="https://mastodon.social/tags/Moi3D" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Moi3D</span></a> <a href="https://mastodon.social/tags/nurbs" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>nurbs</span></a> <a href="https://mastodon.social/tags/surfacing" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>surfacing</span></a> <a href="https://mastodon.social/tags/xnurbs" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>xnurbs</span></a> <a href="https://mastodon.social/tags/car" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>car</span></a> <br><a href="https://youtu.be/P0l--9Oxokk?feature=shared" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">youtu.be/P0l--9Oxokk?feature=s</span><span class="invisible">hared</span></a></p>
pafurijaz<p>Sooner or later I will be able to do it, for now it seems that something is improving, I managed to create an <a href="https://mastodon.social/tags/IGES" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>IGES</span></a> file exported directly by <a href="https://mastodon.social/tags/Blender" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Blender</span></a>, and also a <a href="https://mastodon.social/tags/STEP" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>STEP</span></a> file always with the same <a href="https://mastodon.social/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a> add-on. <a href="https://mastodon.social/tags/b3d" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>b3d</span></a> <a href="https://mastodon.social/tags/CAD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CAD</span></a> <a href="https://mastodon.social/tags/SubD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SubD</span></a> <a href="https://mastodon.social/tags/nurbs" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>nurbs</span></a></p>
pafurijaz<p>I've asked to <a href="https://mastodon.social/tags/AI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>AI</span></a>, an add-on to export <a href="https://mastodon.social/tags/SubD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SubD</span></a> to <a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> from <a href="https://mastodon.social/tags/b3d" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>b3d</span></a>, the add-on managed to export something to both IGES and STEP, there are no errors, the exported files contain data structures but unfortunately any <a href="https://mastodon.social/tags/CAD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CAD</span></a> app managed to open those, although that seem like a failure, it's not, in fact it is the first time that I get an add-on that exports both in <a href="https://mastodon.social/tags/IGES" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>IGES</span></a> and in <a href="https://mastodon.social/tags/STEP" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>STEP</span></a> directly from <a href="https://mastodon.social/tags/Blender" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Blender</span></a> without using external library, maybe next time I could be able to have a working add-on.</p>
SplinesThe classic <a href="https://pixelfed.social/discover/tags/IonicScroll?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#IonicScroll</a> is the most complex of all components in the <a href="https://pixelfed.social/discover/tags/IonicOrder?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#IonicOrder</a> mainly because it is poorly documented, if at all, and even poorly understood. It is as if the classical architects deliberately concealed its enigmatic design secrets within the confines of a smooth elegant shell that could only be revealed after intense study and analysis. <br> <br> I got this impression because I spent years searching for credible and actionable documentation on how to recreate this beautiful design in a <a href="https://pixelfed.social/discover/tags/CAD?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#CAD</a> tool. In the Age of Internet and Social Media, my web searches always disappointed me because the results lacked something vital in one respect or another. Over the years, I created hundreds of versions of the scroll that looked so perfect and pleasing that I thought I had cracked it, only to find some flaw or another in my work.<br> <br> So, it is with caution that I present my work on the scroll in the hopes that someone will build upon this knowledge and either validate the design, or correct it and share it with me and the rest of the world.<br> <br> Looking back at my progress, I'm now surprised at how remarkably simple and elegant the design is that defied familiar geometrical construction techniques I had been using until now.<br> <br> As I mentioned in my introductory post, this design can be recreated by drawing simple 2-dimensional lines and circular arcs, but instead of just <a href="https://pixelfed.social/discover/tags/primaryProfileCurves?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#primaryProfileCurves</a>, we will use up to three additional sets of curves — <a href="https://pixelfed.social/discover/tags/secondaryCurves?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#secondaryCurves</a>, <a href="https://pixelfed.social/discover/tags/tertiaryCurves?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#tertiaryCurves</a>, and <a href="https://pixelfed.social/discover/tags/quaternaryCurves?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#quaternaryCurves</a> — each derived from the previous set.<br> <br> I extracted the <a href="https://pixelfed.social/discover/tags/primaryCurves?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#primaryCurves</a> after a lengthy trial-and-error process that involved <a href="https://pixelfed.social/discover/tags/curveFitting?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#curveFitting</a> image scans from <a href="https://pixelfed.social/discover/tags/Vignola?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#Vignola</a>’s book, <a href="https://pixelfed.social/discover/tags/RegolaArchitettura?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#RegolaArchitettura</a>. I had to <a href="https://pixelfed.social/discover/tags/reverseEngineer?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#reverseEngineer</a> the details because the measurements have either been lost, or are locked away in some library.<br> <br> Even though we start with lines and arcs, the end results are always <a href="https://pixelfed.social/discover/tags/NURBS?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#NURBS</a> curves and surfaces, but everything is done by the CAD tool, and no additional math is needed.
SplinesThe bottom 1/3 of the <a href="https://pixelfed.social/discover/tags/columnShaft?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#columnShaft</a> for an <a href="https://pixelfed.social/discover/tags/IonicColumn?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#IonicColumn</a> is a perfect cylinder. So the line below point B is a straight line. <br> <br> In <a href="https://pixelfed.social/p/Splines/791723063470910081" rel="nofollow noopener noreferrer" target="_blank">https://pixelfed.social/p/Splines/791723063470910081</a>, we blended the bottom end of the 60° arc and the top end of the long interpolated curve between points J and K. Now blend the bottom end of the interpolated curve and the top end of the straight line between points B and C to obtain the 3rd and final <a href="https://pixelfed.social/discover/tags/NURBS?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#NURBS</a> segment for the <a href="https://pixelfed.social/discover/tags/primaryProfileCurve?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#primaryProfileCurve</a> of the shaft.<br> <br> Just like there's a <a href="https://pixelfed.social/discover/tags/cavetto?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#cavetto</a> and <a href="https://pixelfed.social/discover/tags/fillet?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#fillet</a> near the <a href="https://pixelfed.social/discover/tags/neck?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#neck</a> of the shaft, there is a fillet and cavetto near the foot of the shaft. However, there is a subtle difference between the two. The cavetto near the neck is tangential to the blended <a href="https://pixelfed.social/discover/tags/NURBS?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#NURBS</a> curve that is not a straight line. The profile curve for the cavetto near the foot is tangential to a straight line.<br> <br> There is a special name for a cavetto that is tangential to a straight line or flat surface, like the two cavetto moldings in the <a href="https://pixelfed.social/discover/tags/dado?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#dado</a> of the <a href="https://pixelfed.social/discover/tags/pedestal?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#pedestal</a>. It's called a <a href="https://pixelfed.social/discover/tags/conge?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#conge</a>. Another alternate name for the cavetto molding is <a href="https://pixelfed.social/discover/tags/cove?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#cove</a>, which is evocative of "cave" because of its concave profile curve. <br> <br> Above the neck is a fillet 8 units tall and an <a href="https://pixelfed.social/discover/tags/astragal?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#astragal</a> 16 units tall that <a href="https://pixelfed.social/discover/tags/Scarlata?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#Scarlata</a> puts in braces in the column shaft section within his tables of <a href="https://pixelfed.social/discover/tags/VignolaProportions?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#VignolaProportions</a>, with a note saying they are not counted as part of the shaft but are accounted for as part of the <a href="https://pixelfed.social/discover/tags/capital?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#capital</a>.<br> <br> I decided to include the top fillet as part of the shaft and keep the astragal with the capital. It does not change the design or alter the proportions in any way, but the inclusion of the fillet makes it more practical for <a href="https://pixelfed.social/discover/tags/3DPrinting?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#3DPrinting</a> and <a href="https://pixelfed.social/discover/tags/CNCMilling?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#CNCMilling</a> of the neck. This concludes the profile curve for the shaft with a height of 291 parts or 2328 units + 8 for fillet. <br> <br> The column shaft is tapered in the upper 2/3 due to <a href="https://pixelfed.social/discover/tags/entasis?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#entasis</a> whose purpose is to make optical corrections to the shape of the column which, without correction, appeared concave near the top.
SplinesThe section between points J and K is the <a href="https://pixelfed.social/discover/tags/neck?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#neck</a> of the <a href="https://pixelfed.social/discover/tags/shaft?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#shaft</a>. The blue <a href="https://pixelfed.social/discover/tags/primaryProfileCurve?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#primaryProfileCurve</a> below J is the <a href="https://pixelfed.social/discover/tags/interpolated?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#interpolated</a> <a href="https://pixelfed.social/discover/tags/NURBS?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#NURBS</a> curve we fit through 8 points in <a href="https://pixelfed.social/p/Splines/791526497210906825" rel="nofollow noopener noreferrer" target="_blank">https://pixelfed.social/p/Splines/791526497210906825</a>.<br> <br> The neck is conceptually divided into three bands, each 1 part (8 units) tall. In the top 2/3, we draw a circular 90° arc with radius of 16 units, divide it into thirds, and discard the lower 30° portion.<br> <br> Then, blend the lower end of the arc and upper end of the interpolated NURBS curve to create a new NURBS curve shown here in magenta. Zoom in, and you will see that it deviates slightly from the original 90° arc. This is because the blended curve is tangential to the 60° arc and the longer NURBS curve. When joined, the three sections form a smooth continuously differentiable NURBS curve.<br> <br> This level of precision is only needed for engineering work. If you just want a <a href="https://pixelfed.social/discover/tags/charcoal?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#charcoal</a> <a href="https://pixelfed.social/discover/tags/sketch?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#sketch</a>, <a href="https://pixelfed.social/discover/tags/draw?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#draw</a> in <a href="https://pixelfed.social/discover/tags/ink?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#ink</a>, <a href="https://pixelfed.social/discover/tags/paint?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#paint</a> in <a href="https://pixelfed.social/discover/tags/watercolor?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#watercolor</a>, or even make <a href="https://pixelfed.social/discover/tags/clay?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#clay</a> or <a href="https://pixelfed.social/discover/tags/ceramic?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#ceramic</a> <a href="https://pixelfed.social/discover/tags/basrelief?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#basrelief</a>, then you don't even need a <a href="https://pixelfed.social/discover/tags/CAD?src=hash" class="u-url hashtag" rel="nofollow noopener noreferrer" target="_blank">#CAD</a> program. A compass and protractor are sufficient. Just blend the shapes by hand as closely as you can. The imperfections, if any will be imperceptible.<br> <br> This brings us back to the previous post. If you're not using CAD, how do you obtain the 8 points C through J using manual tools?<br> <br> Look closely at the radiating lines, first of which passes through point B and the last one reaches point 8. An easy way to find the angle between these two lines is to use basic trigonometry.<br> <br> Focus on the center of the arc, follow up to point 8, and then drop down vertically where the horizontal line is split at 120 units, and close back to the origin. This is a right triangle whose hypotenuse is the radius of the arc. The cosine of the angle between the base and the hypotenuse is 120/144 = 0.83333333. So the angle itself is arc cosine of 0.83333333, or 33.55730976°. For hand drawing, round it off to 33.6°. Then divide that into 8 parts of 4.2° each to plot points 1 through 8.
pafurijaz<p>Here a little guide on how import a <a href="https://mastodon.social/tags/IGES" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>IGES</span></a> <a href="https://mastodon.social/tags/Nurbs" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Nurbs</span></a> surfaces ready for Subdivision Modifiers, isn't always a suitable workflow, but can help maybe in some cases. <a href="https://mastodon.social/tags/blender" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>blender</span></a> <a href="https://mastodon.social/tags/b3d" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>b3d</span></a> <a href="https://mastodon.social/tags/Blender3D" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Blender3D</span></a><br><a href="https://blenderartists.org/t/how-import-iges-surface-topology-into-blender-ready-for-subd/1556580" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">blenderartists.org/t/how-impor</span><span class="invisible">t-iges-surface-topology-into-blender-ready-for-subd/1556580</span></a></p>
pafurijaz<p><a href="https://mastodon.social/tags/Nurbs" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Nurbs</span></a> <a href="https://mastodon.social/tags/Surface" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Surface</span></a> topology imported into <a href="https://mastodon.social/tags/Blender" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Blender</span></a> without using add-ons to do the <a href="https://mastodon.social/tags/retopology" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>retopology</span></a>. It was a long job, also because I had to understand some things well, but with this method it is possible to import <a href="https://mastodon.social/tags/CAD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CAD</span></a> objects, and apply subdivision surfaces, in many cases the surfaces need to be reconstructed, but with <a href="https://mastodon.social/tags/Moi3D" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Moi3D</span></a> it is quite simple. <a href="https://mastodon.social/tags/b3d" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>b3d</span></a> <a href="https://mastodon.social/tags/blender3d" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>blender3d</span></a></p>
pafurijaz<p>Many went crazy for <a href="https://mastodon.social/tags/Xnurbs" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Xnurbs</span></a>/square command, but with <a href="https://mastodon.social/tags/Plasticity3D" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Plasticity3D</span></a> sometimes using the standard commands results in better surfaces, however, XNurbs creates simpler surfaces, but sometimes the CVs are a bit messy. <a href="https://mastodon.social/tags/Nurbs" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Nurbs</span></a> <a href="https://mastodon.social/tags/CAD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CAD</span></a></p>
pafurijaz<p>A corner ball patch, with two radius fillet and surfaces continuity G2. <a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> <a href="https://mastodon.social/tags/surfaces" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>surfaces</span></a> <a href="https://mastodon.social/tags/CAD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CAD</span></a> <a href="https://mastodon.social/tags/Plasticity3D" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Plasticity3D</span></a></p>
Mark W. Gabby-Li 🐌<p>Finished off my border code. Just about what I was aiming for; I don't want to spend a ton of time, but this looks nice and accomplishes the goal.</p><p><a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> <a href="https://mastodon.social/tags/ConvexHull" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ConvexHull</span></a> <a href="https://mastodon.social/tags/ComputerGraphics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ComputerGraphics</span></a></p>
Mark W. Gabby-Li 🐌<p>I wanted to make selecting curves visually distinct from selecting shapes.<br>A border outline seemed good, but generating that for a concave shape is very hard. So I'm going to generate the outline from the convex hull, which is relatively easy.</p><p>Honestly I'm feeling pretty awful and incompetent as a programmer today, but at least my attempt to implement the A. Melkman linear-time convex hull calculation of simple polygons worked on the first try!</p><p><a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> <a href="https://mastodon.social/tags/ComputerGraphics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ComputerGraphics</span></a> <a href="https://mastodon.social/tags/ConvexHull" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ConvexHull</span></a></p>
Mark W. Gabby-Li 🐌<p>I put some effort into handling the theoretical case of "infinite weights" for NURBS, and let me tell you, it produces some unusual results.</p><p>Mathematically it isn't very well-defined, but if you assume that infinite weight means "discard the influence of other points, only include this one," this is what you get.</p><p>The top and bottom control points of this shape have been set to infinite weight.</p><p><a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> <a href="https://mastodon.social/tags/ComputerGraphics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ComputerGraphics</span></a></p>
Mark W. Gabby-Li 🐌<p>Now that looks nice. It doesn't look like "anti-aliasing," just smooth period.</p><p>I modified my engine so that it does everything in linear color. Simple and fast. I use a lookup table to convert colors.</p><p><a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> <a href="https://mastodon.social/tags/ComputerGraphics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ComputerGraphics</span></a> <a href="https://mastodon.social/tags/SRGB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SRGB</span></a></p>
Mark W. Gabby-Li 🐌<p>Oh man, I am feeling so demotivated about my <a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> project at the moment.</p><p>I thought doing the left edge was going to be relatively easy, but I have run into so many subtle issues.</p><p>... but I did just fix a couple of issues. Including a relatively big one related to not updating the previous point correctly.</p><p>But the multithreading part is still a big mess! I think that might just be one defect though.</p><p><a href="https://mastodon.social/tags/ComputerGraphics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ComputerGraphics</span></a></p>
Mark W. Gabby-Li 🐌<p>Argh, this algorithm is so ill-posed. Knowing what I know now, I imagine I could come up with something far less flaky.</p><p>But anyway, it's almost working. I can even do this, where you don't see any glitches!</p><p><a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> <a href="https://mastodon.social/tags/ComputerGraphics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ComputerGraphics</span></a></p>
Mark W. Gabby-Li 🐌<p>Believe it or not, this is progress...</p><p><a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> <a href="https://mastodon.social/tags/ComputerGraphics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ComputerGraphics</span></a> <a href="https://mastodon.social/tags/Glitches" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Glitches</span></a></p>
Mark W. Gabby-Li 🐌<p>Lots of backend cleanup and fixes! The corruption in the cursor has been fixed.</p><p>I 'anchored' the bounds with a contour offscreen so that the glitch bleeds all the way across this time. 😄</p><p><a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a> <a href="https://mastodon.social/tags/ComputerGraphics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ComputerGraphics</span></a> <a href="https://mastodon.social/tags/Glitches" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Glitches</span></a></p>
Mark W. Gabby-Li 🐌<p>After my last post about my project where I showed a scanning glitch, I realized that it made more sense to confine scanning to the bounding box of the points of the NURBS curve being rasterized.</p><p>Unfortunately that means the glitches aren't as pretty as before. 😅 But they still exist! This one's because I haven't added support to set the scanning state correctly when curves are off the left side of the screen.<br>Other glitches are due to WiP fixes for that!</p><p><a href="https://mastodon.social/tags/Glitch" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Glitch</span></a> <a href="https://mastodon.social/tags/ComputerGraphics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ComputerGraphics</span></a> <a href="https://mastodon.social/tags/NURBS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NURBS</span></a></p>