Git Product home page Git Product logo

guile-hulls's Introduction

 [ G U I L E - H U L L S ]

---------------------------

GUILE-HULLS is a guile module for generating hulls of point-sets.

- Installation:

autoreconf -vif
./configure
make
sudo make install

---------------------------

GUILE-HULLS provides the following module(s):

- (hulls convex-hull)

-- Module: convex-hull
   Algorithms for discovering the convex hull of a set of points.
   The function convex-hull uses the default alogrithm amc-convex-hull.
   This implements Andrew's Monotone Chain algorithm to discover the 
   hull boundary of a set of points.

   `pw-convex-hull implements a 'package-wrap' algorithm to discover the hull. 
   This method is tedious and slow, especially on large datasets, 
   but will eventually find the hull it's looking for.

   Use convex-hull point-list to return a point-list of the hull.
   a point-list is a list of point-vectors '(#(x y ...) #(x y ...) ... #(x y ...))

-- Scheme Procedure: convex-hull points
   Implements Andrew's monotone chain algorithm. O(n log n) complexity.
   points is a list of point-vectors '(#(x y) #(x y) ... #(x y)).
   Returns the x/y points that make up the hull.

-- Scheme Procedure: amc-convex-hull points
   Implements Andrew's monotone chain algorithm. O(n log n) complexity.
   points is a list of point-vectors '(#(x y) #(x y) ... #(x y)).
   Returns the x/y points that make up the hull.

-- Scheme Procedure: pw-convex-hull points
   Implements a package-wrap algorithm to discover the convex hull of a set of points.
   points is a list of point-vectors '(#(x . y) #(x . y) ... #(x .y)).
   Returns a point-list of the hull nodes.

---------------------------

GUILE-HULLS provides the following script(s):

- hull

-- Script: hull
   Generate a hull of a set of points in xy* format.

   Current hull options: convex-hull

   usage: hull [ hfv [ args ] ] [ files ]

   Use -f to format the output; otherwise will output a scheme list of vector-points.
   e.g.
   $ hull file.xyz
  
   (#(x y) #(x y) ... #(x y))

   $ hull -f file.xyz
  
   # @VGMT-1.0 @GPOLYGON
   # @NName
   >
   # @DName
   x1 y1
   x2 y2
   ...
   x1 y1

   Note: if no file is given, will read from standard input.

guile-hulls's People

Contributors

matth-love avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.