Difference between revisions of "Intersection of curves II"

From JSXGraph Wiki
Jump to navigationJump to search
(Created page with "<jsxgraph box="jxgbox" width="600" height="600"> var board = JXG.JSXGraph.initBoard('jxgbox', { axis:true, boundingbox:[-5, 5, 5, -5] }); var curve...")
 
 
(One intermediate revision by the same user not shown)
Line 17: Line 17:
 
     var clip_path = board.create('curve', [[], []], {strokeWidth: 3, fillColor: 'yellow', fillOpacity: 0.6});
 
     var clip_path = board.create('curve', [[], []], {strokeWidth: 3, fillColor: 'yellow', fillOpacity: 0.6});
 
     clip_path.updateDataArray = function() {
 
     clip_path.updateDataArray = function() {
         var a = JXG.Math.Clip.greinerHormann(curve1, curve2, clip_type, this.board);
+
         var a = JXG.Math.Clip.intersection(curve1, curve2, this.board);
 
         this.dataX = a[0];
 
         this.dataX = a[0];
 
         this.dataY = a[1];
 
         this.dataY = a[1];
Line 28: Line 28:
  
 
<source lang="javascript">
 
<source lang="javascript">
 +
  var board = JXG.JSXGraph.initBoard('jxgbox', {
 +
        axis:true,
 +
        boundingbox:[-5, 5, 5, -5]
 +
    });
 +
 +
    var curve1 = board.create('curve', [
 +
            [-3, 3, 0, -3],
 +
            [3, 3, 0, 3]
 +
        ],
 +
        {strokeColor: 'black', fillColor: 'none', fillOpacity: 0.8});
 +
 +
    var curve2 = board.create('polygon', [[3, 4], [-4, 0], [-4, 4]],
 +
            {strokeColor: 'blue', fillColor: 'red', fillOpacity: 0.3});
 +
 +
 +
    var clip_path = board.create('curve', [[], []], {strokeWidth: 3, fillColor: 'yellow', fillOpacity: 0.6});
 +
    clip_path.updateDataArray = function() {
 +
        var a = JXG.Math.Clip.intersection(curve1, curve2, this.board);
 +
        this.dataX = a[0];
 +
        this.dataY = a[1];
 +
    };
 +
 +
    board.update();
 
</source>
 
</source>
  
 
[[Category:Examples]]
 
[[Category:Examples]]
 
[[Category:Curves]]
 
[[Category:Curves]]

Latest revision as of 11:27, 28 March 2020

The underlying JavaScript code

   var board = JXG.JSXGraph.initBoard('jxgbox', {
        axis:true,
        boundingbox:[-5, 5, 5, -5]
    });

    var curve1 = board.create('curve', [
            [-3, 3, 0, -3],
            [3, 3, 0, 3]
        ],
        {strokeColor: 'black', fillColor: 'none', fillOpacity: 0.8});

    var curve2 = board.create('polygon', [[3, 4], [-4, 0], [-4, 4]],
            {strokeColor: 'blue', fillColor: 'red', fillOpacity: 0.3});


    var clip_path = board.create('curve', [[], []], {strokeWidth: 3, fillColor: 'yellow', fillOpacity: 0.6});
    clip_path.updateDataArray = function() {
        var a = JXG.Math.Clip.intersection(curve1, curve2, this.board);
        this.dataX = a[0];
        this.dataY = a[1];
    };

    board.update();