tmilos/cgi-calc

This package is not installable via Composer 1.x, please make sure you upgrade to Composer 2+. Read more about our Composer 1.x deprecation policy.

0.1.0 2016-04-05 13:39 UTC

This package is not auto-updated.

Last update: 2021-09-18 02:19:09 UTC


README

Casual Gaming Infrastructure - Calc PHP library.

License Build Status Coverage Status Scrutinizer Code Quality

Point

$point = new Point(10, 10);
print $point->getX();
print $point->getY();
$leftPoint = $point->left();
$otherPoint = $point->move(new Point(2, 3));

PointSet

$set = new PointSet([new Point(10, 10), new Point(20, 20)]);
$set[new Point(10, 10)] = 'something';
$set->contains(new Point(10, 10)); // true
print $set[new Point(10, 10)]; // something

$other = new PointSet([new Point(10, 10), new Point(0, 0)]);
$unionSet = $set->union($other);
$intersectionSet = $set->intersect($other);
$differenceSet = $set->diff($other);

Field Producers

$rectangularProducer = new RectangularFromTwoPoints(new Point(0,0), new Point(3, 2), function (Point $point) {
    // value provider for the points of the generated rectangular
    return sprintf("%d : %d", $point->getX(), $point->getY());
});
$rect = $rectangularProducer->produce();
$rectangularProducer = new RectangularFromTwoPoints(new Point(2,3), 10, 8);
$rect = $rectangularProducer->produce();
$circleProducer = new CircularCenterRadius(new Point(10,10), 8);
$circle = $circleProducer->produce();

License

Copyright Milos Tomic. This package is licensed under MIT, for details check the LICENSE file.