<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="color: rgb(0, 0, 0); font-family: Calibri,Helvetica,sans-serif; font-size: 12pt;">
<h1 style="margin: 1em 0px 0.5em; color: rgb(51, 51, 51); line-height: 1.2; font-family: Lato, "Helvetica Neue", Helvetica, sans-serif; font-size: 2.82rem; box-sizing: border-box; break-after: avoid-page; break-inside: avoid;">
<span style="box-sizing: border-box;">GSoC Week9 </span></h1>
<p style="color: rgb(51, 51, 51); line-height: 1.5; font-family: Merriweather, "PT Serif", Georgia, "Times New Roman", STSong, serif; font-size: 1.12rem; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;"><strong>YimingWu</strong></span></span><span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Hello everyone, here's my week 9 report!</span></span></p>
<h2 style="margin: 1em 0px 0.5em; color: rgb(51, 51, 51); line-height: 1.2; font-family: Lato, "Helvetica Neue", Helvetica, sans-serif; font-size: 1.99rem; font-weight: 900; box-sizing: border-box; break-after: avoid-page; break-inside: avoid;">
<span style="box-sizing: border-box;">Things have done</span></h2>
<ol style="color: rgb(51, 51, 51); line-height: 1.5rem; font-family: Merriweather, "PT Serif", Georgia, "Times New Roman", STSong, serif; font-size: 1.12rem; font-weight: normal; box-sizing: border-box;">
<li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Suprisingly with Darkdefender's Smooth Contour implementation (Here:
</span><span style="box-sizing: border-box;" spellcheck="false"><a style="color: rgb(70, 63, 92); text-decoration: underline; cursor: pointer; box-sizing: border-box;" href="http://www.labri.fr/perso/pbenard/publications/contours/">http://www.labri.fr/perso/pbenard/publications/contours/</a></span><span style="box-sizing: border-box;">),
 the result become a lot more better because the algorithm solves the front/back facing inconsistency problem  using a geometry approach, it uses a modifier to achieve such function, the only problem is that geometry process is slower than expected, and it
 require subdivision. We are trying to optimize this in the future.</span></span></p>
</li><li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Plan to use Ramer Doglas Prucker algorithm to simplify the vector curve. Here's a simple discription of this algorithm:
</span><span style="box-sizing: border-box;" spellcheck="false"><a style="color: rgb(70, 63, 92); text-decoration: underline; cursor: pointer; box-sizing: border-box;" href="http://karthaus.nl/rdp/">http://karthaus.nl/rdp/</a></span><span style="box-sizing: border-box;">
 As for chainning, The only faster method is to use the same acceleration structure for occlusion test and intersection calculation, but even more memory is required in this method, as it will store more point linkers.</span></span></p>
<ul style="box-sizing: border-box;">
<li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">SVG export can then be achieved after this vector data is present.</span></span></p>
</li><li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">User will be able to adjust how much simplification they want for the curve.</span></span></p>
</li><li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Vector programs such as Inkscape can reduce the amount of points and create bezier curve from them.</span></span></p>
</li></ul>
</li><li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Fixing the places that got pointed out during the code review.</span></span></p>
</li><li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Fixed depth offset algorithm, but sometimes still look weird in viewport.</span></span></p>
</li></ol>
<h2 style="margin: 1em 0px 0.5em; color: rgb(51, 51, 51); line-height: 1.2; font-family: Lato, "Helvetica Neue", Helvetica, sans-serif; font-size: 1.99rem; font-weight: 900; box-sizing: border-box; break-after: avoid-page; break-inside: avoid;">
<span style="box-sizing: border-box;">Next week</span></h2>
<ol style="color: rgb(51, 51, 51); line-height: 1.5rem; font-family: Merriweather, "PT Serif", Georgia, "Times New Roman", STSong, serif; font-size: 1.12rem; font-weight: normal; box-sizing: border-box;">
<li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Continue fixing errors in code review.</span></span></p>
</li><li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Implememt vector chainning and reducing.</span></span></p>
</li><li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">user should be able to use reduced vector result to produce line effects like jittering, extending and dot dash.</span></span></p>
</li><li style="margin: 0px; box-sizing: border-box;">
<p style="margin: 0px 0px 0.5rem; line-height: 1.5; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Implement svg export. (Hopefully)</span></span></p>
</li></ol>
<h2 style="margin: 1em 0px 0.5em; color: rgb(51, 51, 51); line-height: 1.2; font-family: Lato, "Helvetica Neue", Helvetica, sans-serif; font-size: 1.99rem; font-weight: 900; box-sizing: border-box; break-after: avoid-page; break-inside: avoid;">
<span style="box-sizing: border-box;">Questions</span></h2>
<p style="color: rgb(51, 51, 51); line-height: 1.5; font-family: Merriweather, "PT Serif", Georgia, "Times New Roman", STSong, serif; font-size: 1.12rem; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">Seems there are not much questions now. If there's any I will ask in IRC when I'm coding.</span></span></p>
<p style="color: rgb(51, 51, 51); line-height: 1.5; font-family: Merriweather, "PT Serif", Georgia, "Times New Roman", STSong, serif; font-size: 1.12rem; font-weight: 300; box-sizing: border-box; orphans: 4;">
<span style="display: block; box-sizing: border-box;"><span style="box-sizing: border-box;">YimingWu</span></span></p>
<br>
</div>
</body>
</html>