From cad26211b357eb0c48d0729d40c7fde1d057ec1e Mon Sep 17 00:00:00 2001 From: Branislav Stojkovic Date: Sat, 2 Feb 2019 21:13:04 +0100 Subject: [PATCH] add comments --- diylc/diylc-library/lib/diylc-core.jar | Bin 243966 -> 243966 bytes .../components/connectivity/TwistedWire.java | 5 +++++ 2 files changed, 5 insertions(+) diff --git a/diylc/diylc-library/lib/diylc-core.jar b/diylc/diylc-library/lib/diylc-core.jar index c735aab7c4d3cf28ccd956cfe022c4d4ac346157..8b2c7d5ea3088d88ca4146589db93569adb4c533 100644 GIT binary patch delta 4339 zcmY+Gc|eZo7QlO+=bL;{DYRIwvW4v7Mnhx|V=81Dr7*TBl_g6nN@-EP@}`ASN`&&! zYZ<0-aTD&?u4U$0?p(s4rZBQK^PF?uf9^m1&VJ6by8=3Y~TuBC~I-o(VZ zINiKAw<=C|ZI*uxuFMfIhdFWUVnZw&0#I2$KrI^tXwSa{`0_r0&D<3b%Q_kS&i#L3 zLnFt$E}}ow^d`g#swvzc@3n9T4Au<c?-gQ zdZnQGzrEWdKRG+1yK~1Q}1ooCT1 z|1)P8_OYE8f$<{y44= z`mGZL(sr9A(kZzTXn2tN0C0Bu4XCyw%^ST>b_60lGq<(^`;GkhSand*9kjPBF=e>g z`jr`WcbSQapD=hd+9;NB!q(`y|5t3??*O%)Tb6`LPY*x9BL6&!J8yh$EQ2_Ma{M-6 zWn~kzTBc%a!_||YLA`Q{&f&>vD=hNvj3?fXG3S27VqaWrKzmd5eQbKChHgXh)pO|g zx?YF=(YK<|U-j>1;+@mzkNl+s{Z0=apxyM5Gu{K2rxj>_^85_;E2?`Ax?y`m5sWpo zk=i%CrLcodkIdy`P*c8O#R7z(W~>bgp61L2g~-;d2MR@Pm>CL3Y?uWKXYE;g9c10> z#HMo)`a7@_RvgdF&cS?eSyzD0l?0siv@$?Mql9 zR_d^V{fxpN!R#}}ybWbjsN^!6r$MoDl@W@!y{ws*CCt>|H7p6^KdxiWDD;eA5g;hD zU3oXPI+}%{dBkRBhx<5lD@&$&*MgRK8f3jxrOSP0ubL)l%QB|21DNB#gT2KWd^6c3 zwB%gG_#@R1D_!s$C8<#qth&*xyiaFJ#qtO!{NmvVX2*zhSwHC*|Q{ zmGL8+YV@*-z$K|o-?NV7P2&0yo!G}m_P$QX~+FBbAmmOLg8XZeiDUP2mU+V^PnXSdLeU~`OX}9&EFS^R%$^vPS2~{ zi63DwL_jaTfO=$PuF{Q?@ou#Bwa(ldD-Q3^t1$HA0A7lg;=#Ne1$osnQK)z0@hF75 z^B@#zJ!D;IFlihgi$x)uE*rQ53ez|8oAA|A zdqweT`e0{1n_JRCo@7s*;%0+N4{vhkHehL0%g19u zpJ!Y}q16k14`XUy@?L1Ms^^I)=Y^| zk@O1{BY?S~!WZ}^RQLgBgb|O0iCLgqtP);8e~lHZ#7xljtEujc)#5AA3s;M&z=qW{ zx%(QbyK{{Q2D|B6u@o4xR`>wVYqSp+vq29Fr#|Py$#1`o>MvSHb01qr^~~3cNf7V5 zUW5T_){7ZH#|@Mpwt?oT+CX_$8;J`xlK<#Nn(xnz)Mt7G<(Ec?`A|n6NxEO8@CLmi zQp^QfMA4i}qQnBwFGY!Ez#-AJUm4M2A?WWl`o)M9pkI!mJ`Sg!JQ{7oxiAT56IxQ23%Qaq15R0K-zeI{lNThlXHQj9+^-bAE_Q%_39=9aw zmytyF7fH1K5y`}qWLoF1$uzH93gxAxP~LATv@dR{w126oq(4ZdeuK7C-GuG({>giP zXS>`FNryCf?<^F9yk8nAFU?4CwMKfp z!;cY@H9pkna-8gO8t-cCQ%UnjR8s%jmGYcqpROu>>_b%2zgOkHO1s$!+RynXDDUtI G;q@0*zO9@9 delta 4339 zcmY*bc|eZY8tlUv0P;f*~5(x*~6HMvX{bSYqex)MJX-HS6)h#Hc^z1Ui&mI zZo(bm+UAPu5=Kg4WNYSqp6C7N{`Gs--?N-^-tTK^G-+uxF>;+D^xNp^Y4r4p@>7la z@x%G44lTSWU+chZ0Om7WfM_-xKxP90YS~bLPJA?gC+`oijXMBDv#wgNOaD)-ZQ_{M zT?~Q{H-czEoWc=|?}Zb8+pwsH7aKPTJFSY{n3!~=%*Nwk{^_oc)157vT zr4M+nV=U?uElM%#qg62CiY}7{_>Xt9LA}~WhZx&)8phx1<%DQvy9!Vn*5@vSyZ22( z^MCtwLi}cDgYIqvzJR;)Kuv4FUc+yryLp5qVmpUfh(04fBQA1G#cB;>4kD(ETZ7%S zOlaaJMfnqE>AVe^=5al}M15_JnWfHr%6g1ToVFCPar#@BUH8=07V|W7Y!L0{(v<(1 zKN9O$EDXc=w8a)C5MR976!i=KK^Q+c_<#}Ee+}=0_U6b8%u95u+) zaRSj|rwO8MVmY9;Cb-&rL{NDd=|0>_YVcqh`Q}1)3!@Htv1}Baeb`I`7-g3qi$|u;tJxzI z{s>^-G3H}1n?aN-&0qRQD^rF^ZdM9s%3fh82drla82@!6vqPaz7z+bIn&-fK%9W8U z1kGc%F-zQ|#}1ZAe7F4lT(k;bvef-Cvyu%G)UkBQ>G43OUXAp08%PPwcSk4bY<9s5x^`yJ`7o>2}LStgHduF@zh z0!NaY&$BM%kPa-&o2)p-OVwQz`jHiEE;f+*59Wld)pyuLLs*@~V}{pRe)N>3VvPTD z_A?5DUa<~DcjSs^eP@NvT=Ge0R#HVhYbyu8Q8$)V&t_9ts8Mm`6eY}ADveY&V&23S zAW`r~whV>)&8#~LU%s+_3`a;QHT>zFa?o!i7O3P*`_7CY;*=-XVB`|PLx_FA`91?X zD(t2(Y$v(dfa7;gwrRslF!WbrewRWkXO1qyy9u{Pu58DfY3t#pw|dS{D5g+@FFJB> z%$#DyBT%^7g`Yto+M2(kd+zVos1Zs|3*VEeT=UO)qOF|MlhgAmwdKd*amzk^`4Xy; zmcCYhoD%OytFN`=Zpb)l5U;?{uY-9JS_+2oQWTV{mX1P$BacNP)QS6}Q0uJlLV;z_=(0Auq7?bP4$D#0i9vAp#UVCw0wEW=9 z$3d`^yp&htEX#OQ2N3=j%DW?t!6t5pg8gQ0jl%3L{0{cjH-cBv2Rr@Mg2L9yN%ql~ zT(|N8vRxFn!jMT@IsP)pbGCDHw5*QhnJ8%D`6U!?B=CF`)+Y0g*j9Whm$B3YEk6T4 zRPy&6UW%6Ex!kcUSl;~1TiT&e&708mTczv40qZQt;R7*kuv`=Z6H zfybke*~sySMDF{63#>ly6E~pqEWW#cPA_Gwb5dg+?=3I?%tv6({;xc022|=cRZPGy zwC`+TfXS;o#by+0=Zh=wn=F@ji-(vM=PNeA`!4qruK3Q~R|{|GO46+nqm+MDQvDh+ z9`qsp0{-DhzW(CxfEoT`65vyRF&5A|Kscj6KtLPP@c;q;vZT5IF%?jW?<%|7Y#{!HlD??u7(~obL1H@iZv=^1fL(*B6R%(~2K4>G!V~aAuQ1V-CB>rU^sqd2;iO*=0m8tc;j}_{ky-5_Fsyy0mSzgfkKGxe9KNOOG>|wI+I82w|_F>|)E~0+?ifFIris*56J|Y&v zIffn~{oWCJl=er3FWC1S6+VEURefUXq`@=|mZ zSF59Q9d(j0QN<@J+MgnOjEWCb>|aj(hm}+Pd*yUaJ!JJh$)ul`X|IN-X`hQvQ{J)D G!u2n2P04`( diff --git a/diylc/diylc-library/src/org/diylc/components/connectivity/TwistedWire.java b/diylc/diylc-library/src/org/diylc/components/connectivity/TwistedWire.java index 8e8b009c..0a0737b7 100644 --- a/diylc/diylc-library/src/org/diylc/components/connectivity/TwistedWire.java +++ b/diylc/diylc-library/src/org/diylc/components/connectivity/TwistedWire.java @@ -234,6 +234,7 @@ public class TwistedWire extends AbstractCurvedComponent { current1.moveTo(polygon.get(0).getX1(), polygon.get(0).getY1()); current2.moveTo(polygon.get(0).getX1(), polygon.get(0).getY1()); + // create curved paths for each segment of the twisted pair for (int i = 0; i < polygon.size(); i++) { Line2D line = polygon.get(i); double centerX = (line.getX1() + line.getX2()) / 2; @@ -262,6 +263,7 @@ public class TwistedWire extends AbstractCurvedComponent { } } + // convert to Area for (Path2D p : firstCurves) { firstLeadArea.add(new Area(stroke.createStrokedShape(p))); } @@ -269,6 +271,7 @@ public class TwistedWire extends AbstractCurvedComponent { secondLeadArea.add(new Area(stroke.createStrokedShape(p))); } + // at overlapping points, decide which lead goes on top and clear the overlapping area from the lead below for (int i = 0; i < polygon.size(); i++) { Line2D line = polygon.get(i); Area pointRect1 = new Area(new Rectangle2D.Double(line.getX1() - rectSize / 2, line.getY1() - rectSize / 2, rectSize, rectSize)); @@ -294,6 +297,7 @@ public class TwistedWire extends AbstractCurvedComponent { } } + // splits a curve into a series of lines private List split(CubicCurve2D curve, double segmentLength) { Point2D p1 = curve.getP1(); Point2D p2 = curve.getP2(); @@ -316,6 +320,7 @@ public class TwistedWire extends AbstractCurvedComponent { return res; } + // calculates length of a curve, given the precision private double calculateLength(CubicCurve2D curve, double precision) { Point2D p1 = curve.getP1(); Point2D p2 = curve.getP2();