<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Trying to implement Sinumerik Cycle  in HSM Post Processor Forum</title>
    <link>https://forums.autodesk.com/t5/hsm-post-processor-forum/trying-to-implement-sinumerik-cycle/m-p/6099457#M25193</link>
    <description>I think I understand now how you wanted to have it.&lt;BR /&gt;If you have up to now no reply by Achim, you could try the following&lt;BR /&gt;&lt;BR /&gt;&lt;PRE&gt;&amp;nbsp; if (properties.useCycle832) {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; if (hasParameter("operation-strategy") &amp;amp;&amp;amp; (getParameter("operation-strategy") == "drill")) {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; writeBlock("CYCLE832()");&lt;BR /&gt;&amp;nbsp; &amp;nbsp; } else if (hasParameter("operation:tolerance")) {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; var tolerance = Math.max(getParameter("operation:tolerance"), 0);&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; if (tolerance &amp;gt; 0) {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var workMode = 0;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //Thresholds&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var stockToLeaveThresholdF = toPreciseUnit(0, MM);&amp;nbsp; &amp;nbsp; &amp;nbsp; //Finishing&amp;nbsp; &amp;nbsp; &amp;nbsp; workMode=1 from 0.000mm - 0.009mm&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var stockToLeaveThresholdS = toPreciseUnit(0.01, MM);&amp;nbsp;  //Semi-finishing workMode=2 from 0.010mm - 0.099mm&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var stockToLeaveThresholdR = toPreciseUnit(0.1, MM);&amp;nbsp; &amp;nbsp; //Roughing&amp;nbsp; &amp;nbsp; &amp;nbsp;  workMode=3 from 0.100mm - open end&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //Stocks from Operation&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var stockToLeave = (hasParameter("operation:stockToLeave")) ? getParameter("operation:stockToLeave") : 0;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var verticalStockToLeave = (hasParameter("operation:verticalStockToLeave")) ? getParameter("operation:verticalStockToLeave") : 0;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //Check conditions for Roughing&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if ((stockToLeave &amp;gt;= stockToLeaveThresholdR) || (verticalStockToLeave &amp;gt;= stockToLeaveThresholdR)) {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; workMode = 3;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //Check conditions for Semi-Finishing&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (((stockToLeave &amp;gt;= stockToLeaveThresholdS) || (verticalStockToLeave &amp;gt;= stockToLeaveThresholdS)) &amp;amp;&amp;amp;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ((stockToLeave &amp;lt;&amp;nbsp; stockToLeaveThresholdR) &amp;amp;&amp;amp; (verticalStockToLeave &amp;lt;&amp;nbsp; stockToLeaveThresholdR))) {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; workMode = 2;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //Check conditions for Finishing&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (((stockToLeave &amp;gt;= stockToLeaveThresholdF) || (verticalStockToLeave &amp;gt;= stockToLeaveThresholdF)) &amp;amp;&amp;amp;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ((stockToLeave &amp;lt;&amp;nbsp; stockToLeaveThresholdS) &amp;amp;&amp;amp; (verticalStockToLeave &amp;lt;&amp;nbsp; stockToLeaveThresholdS))) {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; workMode = 1;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (workMode) {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; writeBlock("CYCLE832(" + xyzFormat.format(tolerance) + ", " + workMode + ", 1)");&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } else {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; writeBlock("CYCLE832()");&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; } else {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; writeBlock("CYCLE832()");&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; } else {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; writeBlock("CYCLE832()");&lt;BR /&gt;&amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; }&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;i have this not tested, its only a try...&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Edit: correct Bracket-error in roughing IF&lt;BR /&gt;&lt;BR /&gt;</description>
    <pubDate>Mon, 09 Nov 2015 18:42:30 GMT</pubDate>
    <dc:creator>makko74</dc:creator>
    <dc:date>2015-11-09T18:42:30Z</dc:date>
  </channel>
</rss>

