[Molecuilder-devel] [SCM] MoleCuilder branch Fix_ConvexizeNonconvexEnvelope created. v1.4.8-72-g8e74197

git repository hosting git at ins.uni-bonn.de
Thu Oct 9 20:36:06 CEST 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "MoleCuilder".

The branch, Fix_ConvexizeNonconvexEnvelope has been created
        at  8e74197f1d553ae70622aa7e43efb475e1184738 (commit)

- Log -----------------------------------------------------------------
commit 8e74197f1d553ae70622aa7e43efb475e1184738
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 12:00:11 2014 +0200

    TESTS: Extended Tesselations tests to convex case.
    
    - moved all present tests to NonConvex folder, added same set but including
      amylose in Convex folder.

commit a7fae96d75cd79c83b97785ed7821b2b69a561f1
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 11:45:56 2014 +0200

    TESTFIX: Regression test Tesselation/BigConvex is now working.

commit 34b691d3b3f0482da15ed9e20312f1f6007422fb
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 11:47:03 2014 +0200

    Convex-envelope has debug parameter DoOutputEveryStep.
    
    - this writes for each convexization step a distinct tesselation file.
    - added parameter to ConvexizeNonconvexEnvelope().

commit de289e773811c03b0c6a61bf90fb689c2c4e6600
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 12:31:18 2014 +0200

    FIX: Tesselation::RemoveDegeneratedTriangles() ended up in endless loop.
    
    - even if a triangle pair is not removed, it must still be removed from the
      degenerated list or we run into infinite loops.

commit 5047e5d52c54b426be18f9b9cd4c347cc4c63be4
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 11:34:55 2014 +0200

    Added tcl scripts for viewing and debugging convexized surfaces.

commit 44c2ecc19d1ecb36bd9c6c70777229036b43b742
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 11:34:24 2014 +0200

    tempcommit: Reduced final verbosity for convexization to manageable niveau at level 1.

commit 2973e489b56c03d8c8e7798e99d0888639ced433
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 10:56:24 2014 +0200

    FIX: Raster3D needs header.r3d, which had been missing so far.

commit 62196cb464d5ee8f4aa632fc527018e9c293e580
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 10:55:44 2014 +0200

    DOCU: Added extensive explanation how convexization works.
    
    - updated userguide for convex-envelope.

commit a470656afbe5cbda1699c759e035e1981d80c7ed
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 10:27:36 2014 +0200

    ConvexizeNonconvexEnvelope() uses now RemoveFullConcavePointFromTesselatedSurface().
    
    - with this convexization of a nonconvex tesselated surface seems to be
      robustly working as we can now deal also with points with degeneracies.

commit b4c673f37d089bb07d6233a3a62e06101a7f50e6
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 10:27:19 2014 +0200

    tempcommit: Merge with f1a7d2f144

commit 37028ce4c639cc80a1c3451414efde550532e3ad
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Oct 9 09:37:06 2014 +0200

    Extracted RemovePointSurroundedByPolygon() out of Tesselation::RemovePointFromTesselatedSurface()
    
    - also added new functions
      Tesselation::RemoveFullConcavePointFromTesselatedSurface() and
      Tesselation::CheckAllConcaveInPolygon().

commit 69ef32536f0d25375af69c9b51d8f2b07dec9661
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Wed Oct 8 18:14:39 2014 +0200

    FIX: ConvexizeNonconvexEnvelope() needs to purge degenerate triangles before convexization.

commit f1a7d2f144b03242611c0e0916fcca57bc718315
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Wed Oct 8 15:08:11 2014 +0200

    FIX: GainMap is used to store the concavity angle, we flip most concave first.
    
    - this overrules prior flipping those that gives greatest gain in volume.

commit af8892464a53265846abe8a6e324904c954600c8
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Wed Oct 8 14:46:36 2014 +0200

    FIX: Tesselation::RemovePointFromTesselatedSurface() uses wrong NormalVector.
    
    - with the point to be removed we have a very good measure for a vector
      pointing inside. Before we used the average of all normal vectors.

commit 12d31c1d21fe533b7b0c6c1a33919c33c17d35ca
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Oct 7 09:57:42 2014 +0200

    tempcommit: Smaller fixes to ConvexizeNonconvexEnvelope().
    
    - just verbosity and little stuff that does not change functionality.

commit bb9499687f8a75bb22a1be2fe45ca98517df99af
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Oct 7 09:55:26 2014 +0200

    FIX: Tesselation::getVolumeOfConvexEnvelope() calculated volume wrong.
    
    - replaced code by using present function for tetrahedron calculation with
      center of gravity as fourth point when going over all boundary triangles.

commit 779b8ef52c1f0f07f71790fccc8de2636efe8d1a
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Oct 7 09:38:17 2014 +0200

    tempcommit: Removed flipping for maximal gain in Tesselation::RemovePointFromTesselatedSurface().

commit a30c74cd5f81bb12d6a38a8bbafda1bf73e734b3
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Oct 7 09:28:44 2014 +0200

    DOCUFIX: Corrected formuma for general tetrahedron in docu.
    
    - also code now matches with formula to avoid further confusion, although
      the result does not change by that.

commit 6fc7b1a5ac66a0125889161df71e3df59a724f2c
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Oct 7 09:04:54 2014 +0200

    tempcommit: ConvexizeNonconvexEnvelope() rewritten.
    
    - now works for some sphere radii on amylose (e.g. 40 and 50).
    - before we calculated the average number of concave lines for the four points
      of the tetraeder and picked the minimum as flipping candidate (doing
      nothing, if its baseline was present). Also, we removed points when all
      possible triangles had the point under its plane.
      Now, we always flip the baseline (i.e. add a general tetraeder to the
      non-convex volume) for concave lines when the tetraeder does not intersect
      with present triangles. Also, the point removal if inside of surrounding
      polygon is removed.

commit 31de80f22402fe9f2c8dde82ace46d74276dc209
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Oct 7 08:57:30 2014 +0200

    FIX: Tesselation::FlipBaseline() caclculated NormalVectors wrong.
    
    - before we just took the average of the normal vector of both present
      triangles as guide. Now, we check the intersection of the fourth endpoint
      on the plane of the first triangle and decide by on which side of the
      three boundary lines the intersection lies whether to flip the normal
      vectors sign for the associated (new) triangle or not.

commit d919f2562ba6866bbd4cba4319340f851f91f342
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Oct 5 18:56:03 2014 +0200

    tempcommit: IsPointBelowSurroundingPolygon() creates all triangles as planes and checks whether point is below.

commit 3878ea9e78d59ac40c2e718906eac490fbfdd82c
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Oct 5 18:55:31 2014 +0200

    tempcommit: Just writing a single file with incrementing suffix for ConvexEnvelope.

commit 36aad107af42cfc84cfbd14510c05ecebd42a35b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Oct 5 14:21:14 2014 +0200

    tempcommit: Further changes to onvexizeNonconvexEnvelope().
    
    - first full-concave point removal, then baseline flipping with local concavity
      constraint and no present other tetraeder sides (and full-concave priority),
      at last removal of points that are below their surrounding polygon.
    - added Tesselation::IsPointBelowSurroundingPolygon()

commit 9af4c3de2a037e9bd4ad7345b1180bd3e5e16238
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Oct 5 14:20:00 2014 +0200

    tempcommit: Added Tesselation::isConvex(). Merge with 675ad817

commit 50483c4cd544dc029ed78f01991e2ebaf6f58406
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Oct 5 14:19:15 2014 +0200

    tempcommit: Further verbosity reductions to BoundaryTriangleSet.

commit 675ad817bef03c062b24452a9dc3cc7e390689f7
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sun Oct 5 14:18:20 2014 +0200

    tempcommit: ConvexEnvelopeAction checks for convex surface in debug.

commit 69fa6c049528a4cf0d886702243f1675e7f14503
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sat Oct 4 16:47:11 2014 +0200

    Revert "FIX: PickFarthestofTwoBaselines() additionally checks whether baselines "overlap"."
    
    This reverts commit 572bcde90dcbf97523476b140d8fae6cafd42d8f.

commit 9a9416cccdb11a9a3da43519bd40f03d04cdf4bd
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sat Oct 4 16:35:50 2014 +0200

    Reduced verbosity noise in TriangleIntersectionList.

commit 74844de90016057541c79e302dabbbcd7f46f4a2
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sat Oct 4 16:34:41 2014 +0200

    tempcommit: Rewrote ConvexizeNonconvexEnvelope
    
    - we flip all lines that are concave if they maximize local concavity for a
      single point - that we subseqeuently hope to remove.
    - we just remove at most one point and then start the whole loop again.

commit f8fd4a188c60cb600f54098d5f178a16221e0f8b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sat Oct 4 16:33:47 2014 +0200

    tempcommit: LCList did not use SphereRadius. Merge with ...

commit c05c249562ece151dd0ac7042e7ee332c04263dc
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Sat Oct 4 10:44:54 2014 +0200

    Added check whether all points remain inside surface to ConvexEnvelopeAction.

commit 81f5873ea1548ab8a7c8a018a40f470e55d27e89
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Oct 3 22:09:03 2014 +0200

    tempcommit: Fixing regression test for new sphere param. Merge with ...

commit 572bcde90dcbf97523476b140d8fae6cafd42d8f
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Oct 3 19:19:38 2014 +0200

    FIX: PickFarthestofTwoBaselines() additionally checks whether baselines "overlap".
    
    - we do not check whether the polygon consisting of the four points defined by
      the two baslines is actually "convex": Convex is not such a good criterion as
      the two triangles (with respect to the baseline) may form a bent structure
      such that the flattended representation of th polygon is not convex while
      the actual angles are all less than pi. Hence, we check whether the closest
      point with respect to one base line on the other is actually still between
      the two endpoints of the baseline. If not, we must not flip the baseline, as
      we then invalidate the tesselation.

commit a28d9dda88e83aa29a4befa44682863f6140e762
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Oct 3 12:29:08 2014 +0200

    tempcommit: Merge with 39268ec

commit 0b5b00d8330e6747fd1aa47a34e3fa195d11909b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Oct 3 12:27:57 2014 +0200

    FIX: Filling of non-convex polygon with only minimal angles did not work.
    
    - when removing points from non-convex boundary and we encounter non-convex
      polygons, we must pick smallest angles but close to the non-convex site!

commit e12e836bd699a85e0608283fc6e5577ca1d321f4
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Oct 3 11:43:03 2014 +0200

    FIX: RemovePointFromTesselatedSurface() used Start,Middle,EndNode confusingly.
    
    - FIX: Very last node was removed twice due to StartNode = EndNode setting.

commit 39268ec511e8f9825248457988fea5b54642f081
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Oct 3 11:42:18 2014 +0200

    tempcommit: fixed assert in RemovePointFromTesselatedSurface(). Merge with ...

commit a66f0844410a4b403830a4d74ff5e673a38e9044
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Oct 3 11:40:06 2014 +0200

    FIX: Last line in RemovePointFromTesselatedSurface() added falsely.
    
    - AddTesselationLine() now returns whether new or present line was used.
    - FIX: Last inner line in closed polygon has been added by one but last
      triangle already, we added it twice.

commit 1c9d0fab2f0004443f9ff5022852da75abfd7fa6
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Oct 3 11:39:34 2014 +0200

    tempcommit: Further reduced verbosity noise in tesselation.

commit fb4449480aeaa9e8fe00df8d49cac94aba8332bc
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Fri Oct 3 11:38:16 2014 +0200

    tempcommit: Reduced verbosity noise from Line::getIntersection().

commit 4fe57a515a5f9818403c090a625a103fca41799b
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Mon Sep 29 16:40:10 2014 +0200

    MEMFIX: Static coordinator instances of specificv potentials need to be Memory::ignore()'d.

commit 6c7ec20731376548eb4a33bbfc9da8bc7b31eed3
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Mon Sep 29 16:35:04 2014 +0200

    FIX: Added Boost::MultiIndexContainer check for MemDebug.
    
    - this requires CodePatterns 1.2.10 and allows finally enable-debug compilation
      with Ubuntu 14.04.

commit ab72314934e071f1c33d4d2875f9d27458fb67da
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Sep 25 21:13:43 2014 +0200

    Changed verbosities in tesselation a lot to make readable.

commit 743052c22b9d7f7591cac44bd5eb2e484a5c3e42
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Sep 25 20:26:20 2014 +0200

    FIX: Changed all performCriticalExit() into ASSERT() in tesselation.

commit d4f9bb3aba23969df122e85d3f5307a0398e5c3f
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Sep 25 20:26:03 2014 +0200

    Changed some verbosities in Tesselation code.

commit a07e7053630cf9faa4f5fc18481901cc4f79ab96
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Sep 25 20:24:52 2014 +0200

    FIX: RemoveTesselationLine() needs to erase line from OpenLines if present.

commit 8e3d9d4f8f83fa748239e028a866abd8ab8c70d0
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Sep 25 20:23:50 2014 +0200

    FIX: RemovePointFromTesselatedSurface() needs to pick smallest angle when polygon is not convex.

commit 10a01718c3a6190cfc9de345527be832011b1f87
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Sep 25 18:25:23 2014 +0200

    FIX: AddTesselationLine() would onl work in initial tesselation phase.
    
    - the CandidateForTesselation instance is NULL when we convexize and this
      was not correctly processed by AddTesselationLine().

commit e13991dce439602624fbb51421d9bf3c0a816396
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Thu Sep 25 18:24:30 2014 +0200

    Added SphereRadius parameter to ConvexEnvelopeAction.

commit 128616612a611878bc0a942bbc2f1eecab5d0c9a
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Tue Sep 23 18:14:18 2014 +0200

    FIX: Setting ActionQueue::_lastchangedaction without heeding whether Action failed is bad.
    
    - causes segfault when notification informs about change and _lastchangeaction
      is still NULL (as the very first Action failed).
    - we now only notify when action succeeded.

commit 56eee6e652088e82274fd47b6fd2b3b70e898feb
Author: Frederik Heber <heber at ins.uni-bonn.de>
Date:   Mon Sep 22 22:10:11 2014 +0200

    FIX: QSeisPlotPage's dstor calls deinitializeLayout() only when initialized.

-----------------------------------------------------------------------


hooks/post-receive
-- 
MoleCuilder



More information about the Molecuilder-devel mailing list