[Soc-2014-dev] Weekly Report #10: NURBS Modernization

claas kuhnen info at ckbrd.de
Sat Jul 26 15:26:50 CEST 2014


I use MOI as my main nurbs to mesh converter and it uses ngons a lot not
for holes but surfaces.

Claas
On Jul 26, 2014 8:51 AM, "Dalai Felinto" <dfelinto at gmail.com> wrote:

> Hi,
>
> > * Does anyone know of good example code for making a BMesh out of
> n-gons? N-gons would make the meshes produced by Alt+C *much* cleaner.
>
> Be aware that N-gons don't support holes (at the moment), so you may
> get buggy meshes during this conversion. But as Sergey said, you don't
> need to convert the nurbs to ngons.
>
> Cheers,
> Dalai
> --
> blendernetwork.org/dalai-felinto
> www.dalaifelinto.com
>
>
> 2014-07-26 8:39 GMT-03:00 Sergey Sharybin <sergey.vfx at gmail.com>:
> > Hi,
> >
> > It's cool to hear you're doing progress, but what about committing the
> stuff
> > to Git? Last commit was done on Monday and in the report you claim having
> > progress since that. Commit the stuff even if it's not production ready.
> > I've asked about this several times already.
> >
> > Before you go to importing or making improvements to curve->mesh
> conversion
> > i'll demand wrapping existing code up, making so it's used in blende (and
> > commit everything!)r and preparing demo files for this.
> >
> > As for ngon examples, you just need to fill in mpoly and mloop arrays
> > actually. MOD_boolean_util.c has examples (it operates with DerivedMesh,
> but
> > it's almost the same as you need for curve->mesh conversion).
> >
> > Also, what are the plans for the next week?
> >
> >
> > On Sat, Jul 26, 2014 at 1:43 PM, Jonathan deWerd <jjoonathan at gmail.com>
> > wrote:
> >>
> >> This week was largely eaten up by a task that I thought would be a quick
> >> copy/paste job but turned into a morass of debugging math code.
> Fortunately
> >> that part is done -- and the result is much prettier smooth curves:
> >>
> >> http://wiki.blender.org/index.php/User:Jjoonathan/New_NURBS_Eval
> >>
> >> Progress This Week:
> >> * Finished the new evaluation code. Key features:
> >> * Computes any number of partial derivatives analytically
> >> * Immediate application 1: compute normals analytically = it looks
> smooth
> >> again :)
> >> * No nasty lighting artifacts near trim edges
> >> * No seams where curves touch/loop due to calculating normals at polygon
> >> corners
> >> * Immediate application 2: handle (literal) edge cases of eval points
> >> lying on knots correctly
> >> * Immediate application 3: uses 1/2 as many divisions, so possibly it's
> >> faster, although I didn't check
> >> * Future application: computing error bounds
> >> * Performed extensive verification of the new eval code
> >> * Mesh points coincide with Rhino surfaces
> >> * All 1st, 2nd (partial) derivatives agree with Mathematica's NURBS
> >> implementation (direction, amplitude correct).
> >> * Made progress on the trim curve tessellator.
> >> * NOTE: last week I mistakingly said that I had finished the trim curve
> >> tessellator when I actually meant to say that I had finished the surface
> >> tessellator.
> >> * Refactored the import code so that it can make detatched curves
> >> * Adjusted memory management & blenloader
> >> * The trim curve tessellator isn't a sticking point, I only got around
> to
> >> working on it again today. The eval code was the sticking point.
> >>
> >> Things that were done that don't officially constitute progress:
> >> * Spent Thursday finishing rotation surface & interpolation surface
> >> chapters in P&T
> >>
> >> Things that must be done before I can import the sample .3dm files:
> >> * Finish the trim curve tessellator
> >> * Rotation surfaces
> >>
> >> Things I could use help on:
> >> * Does anyone know of good example code for making a BMesh out of
> n-gons?
> >> N-gons would make the meshes produced by Alt+C *much* cleaner.
> >>
> >>
> >>
> >> On Jul 19, 2014, at 1:28 PM, claas kuhnen <info at ckbrd.de> wrote:
> >>
> >> So agree I am very excited about this
> >>
> >> On Jul 19, 2014 1:27 PM, "Sergey Sharybin" <sergey.vfx at gmail.com>
> wrote:
> >>>
> >>> Seems to be rather nice progress. Would be cool if all the bits are
> >>> committed and some .blend in shared which demonstrates the stuff.
> >>>
> >>>
> >>> On Sat, Jul 19, 2014 at 4:31 PM, Jonathan deWerd <jjoonathan at gmail.com
> >
> >>> wrote:
> >>>>
> >>>> Progress:
> >>>> * Finished code to tessellate trim curves!
> >>>>         see:
> >>>> http://wiki.blender.org/index.php/User:Jjoonathan/NURBS_In_Blender
> >>>> * Rewrote knot code to match the conventions in the math literature,
> >>>> tested for compatibility by comparing meshes
> >>>> * Worked on adapting a better NURBS evaluation algorithm that can
> >>>> produce first and second derivatives (for normals and error bounds,
> >>>> respectively).
> >>>>         it's still buggy.
> >>>> * Worked further on the NurbEdge interface to handle imported trim
> >>>> curves
> >>>>         still working on code to match endpoints that are separated in
> >>>> UV space but coincide in R3 due to either wrapping in UV space (cyclic
> >>>> NURBS) or coving
> >>>>
> >>>> Todo:
> >>>> * Finish tracking down the NaN-producing bugs in the new surface
> >>>> evaluator
> >>>>         From there, should be easy to implement good normals
> >>>> * Finish NurbEdge so that it at least handles wrapping in UV space.
> This
> >>>> will allow importing of most .3dm files.
> >>>> * Implement revolution surfaces.
> >>>>         Demo Claas's hairdryer model!
> >>>>
> >>>> On Jul 12, 2014, at 11:14 AM, Jonathan deWerd <jjoonathan at gmail.com>
> >>>> wrote:
> >>>>
> >>>> > (Apologies if this is a duplicate email. I see a copy of this email
> in
> >>>> > gmail's "sent" folder but I don't see one in my inbox, so I'm
> sending
> >>>> > again.)
> >>>> >
> >>>> > Progress:
> >>>> > * Finished the code that traverses BReps from 3dm files and cuts
> them
> >>>> > into surfaces
> >>>> > * 2D Trim curves import as Nurb objects that are appended to a
> >>>> > NurbList in their parent surface
> >>>> >       Just curves currently, I still have to get multi-part loops
> >>>> > working
> >>>> >       Also they don't seem to be preserved by DNA even after calling
> >>>> > makesdna...
> >>>> > * Moved surf_gridmesh into bf_blenkernel, promoted curve.c to
> >>>> > curve.cpp (for future OpenNurbs use), fixed a few small bugs that
> caused,
> >>>> > moved the GLUT debug code into blender/tests, convinced CMake to
> build and
> >>>> > link it
> >>>> > * Wrote, debugged the method that builds the displist from the
> >>>> > gridmesh
> >>>> > * Timed it, see pretty graph a few emails back
> >>>> > * Started writing NurbEdge structure to handle in general the sewing
> >>>> > of trim edges and cyclic edges (e.g. so that spheres don't have
> seams)
> >>>> >
> >>>> > Next up:
> >>>> > * I still need to finish the code that tessellates the trim curves.
> I
> >>>> > didn't get much time to work on it today, so I'm planning to work
> on it
> >>>> > tomorrow as well.
> >>>> > * Get trim curves to load/save from .blend files by figuring out
> what
> >>>> > I'm doing wrong with makesdna
> >>>> > * Finish NurbEdge interface for defining edges to sew, get it in DNA
> >>>> > as well
> >>>> > * Use NurbEdge to implement revolution surfaces
> >>>> >
> >>>>
> >>>> _______________________________________________
> >>>> Soc-2014-dev mailing list
> >>>> Soc-2014-dev at blender.org
> >>>> http://lists.blender.org/mailman/listinfo/soc-2014-dev
> >>>
> >>>
> >>>
> >>>
> >>> --
> >>> With best regards, Sergey Sharybin
> >>>
> >>> _______________________________________________
> >>> Soc-2014-dev mailing list
> >>> Soc-2014-dev at blender.org
> >>> http://lists.blender.org/mailman/listinfo/soc-2014-dev
> >>>
> >> _______________________________________________
> >> Soc-2014-dev mailing list
> >> Soc-2014-dev at blender.org
> >> http://lists.blender.org/mailman/listinfo/soc-2014-dev
> >>
> >>
> >>
> >> _______________________________________________
> >> Soc-2014-dev mailing list
> >> Soc-2014-dev at blender.org
> >> http://lists.blender.org/mailman/listinfo/soc-2014-dev
> >>
> >
> >
> >
> > --
> > With best regards, Sergey Sharybin
> >
> > _______________________________________________
> > Soc-2014-dev mailing list
> > Soc-2014-dev at blender.org
> > http://lists.blender.org/mailman/listinfo/soc-2014-dev
> >
> _______________________________________________
> Soc-2014-dev mailing list
> Soc-2014-dev at blender.org
> http://lists.blender.org/mailman/listinfo/soc-2014-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/soc-2014-dev/attachments/20140726/bbe9edcb/attachment.htm 


More information about the Soc-2014-dev mailing list