{"id":18695930,"url":"https://github.com/gridap/miniqhull.jl","last_synced_at":"2025-11-08T14:30:28.183Z","repository":{"id":43690471,"uuid":"240048866","full_name":"gridap/MiniQhull.jl","owner":"gridap","description":"A small Julia wrapper of the Qhull library","archived":false,"fork":false,"pushed_at":"2023-08-09T15:38:09.000Z","size":64,"stargazers_count":30,"open_issues_count":7,"forks_count":9,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-01-20T20:20:31.914Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gridap.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-02-12T15:38:22.000Z","updated_at":"2024-10-03T08:53:47.000Z","dependencies_parsed_at":"2024-12-28T03:26:34.014Z","dependency_job_id":"d28dc4d2-9d0b-417e-9b8c-492ec388d2bf","html_url":"https://github.com/gridap/MiniQhull.jl","commit_stats":{"total_commits":83,"total_committers":9,"mean_commits":9.222222222222221,"dds":0.6024096385542168,"last_synced_commit":"3067bbadd4f896c30042a8a7c7cb3b1079ced22e"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gridap%2FMiniQhull.jl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gridap%2FMiniQhull.jl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gridap%2FMiniQhull.jl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gridap%2FMiniQhull.jl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gridap","download_url":"https://codeload.github.com/gridap/MiniQhull.jl/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239558910,"owners_count":19658927,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T11:16:39.575Z","updated_at":"2025-11-08T14:30:28.105Z","avatar_url":"https://github.com/gridap.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MiniQhull\n\n[![CI](https://github.com/gridap/MiniQhull.jl/workflows/CI/badge.svg)](https://github.com/gridap/MiniQhull.jl/actions)\n[![Codecov](https://codecov.io/gh/gridap/MiniQhull.jl/branch/master/graph/badge.svg)](https://codecov.io/gh/gridap/MiniQhull.jl)\n\n[MiniQhull](https://github.com/gridap/MiniQhull.jl) ([Qhull](http://www.qhull.org/)-based Delaunay triangulation).\n\n## Documentation\n\nThe `MiniQhull` julia package provides a single function `delaunay` overloaded with 3 methods:\n\n```julia\ndelaunay(dim::Integer, numpoints::Integer, points::AbstractVector) -\u003e Matrix{Int32}\n```\n\nCompute the Delaunay triangulation of a cloud of points in an arbitrary dimension `dim`. The length of vector `points` must be `dim*numpoints`. Vector `points` holds data in \"component major order\", i.e., components are consequitive within the vector. The returned matrix has shape `(dim+1, nsimplices)`, where `nsimplices` is the number of\nsimplices in the computed Delaunay triangulation.\n\n```julia\ndelaunay(points::AbstractMatrix) -\u003e Matrix{Int32}\n```\n\nIn this variant, the cloud of points is specified by a matrix with `size(matrix) == (dim, numpoints)`.\n\n```julia\ndelaunay(points::AbstractVector) -\u003e Matrix{Int32}\n```\n\nIn this variant, the cloud of points is specified with a vector of `dim`-element vectors or\ntuples. It is also possible to use a vector of other tuple-like types, like `SVector` from\n[StaticArrays.jl](https://github.com/JuliaArrays/StaticArrays.jl).\n\n### Adjusting Qhull flags\n\nYou can override the default set of flags that Qhull uses by passing\nan additional `flags` argument:\n\n```julia\ndelaunay(dim::Integer, numpoints::Integer, points::AbstractVector, flags::AbstractString) -\u003e Matrix{Int32}\ndelaunay(points::AbstractMatrix, flags::AbstractString) -\u003e Matrix{Int32}\ndelaunay(points::AbstractVector, flags::AbstractString) -\u003e Matrix{Int32}\n```\n\nThe default set of flags is `qhull d Qt Qbb Qc Qz` for up to 3 dimensions, and `qhull d Qt Qbb Qc Qx` for higher dimensions. The flags you pass override the default flags, i.e. you have to pass all the flags that Qhull should use.\n\n## Examples\n\n```julia\nusing MiniQhull\ndim          = 2\nnumpoints    = 4\ncoordinates  = [0,0,0,1,1,0,1,1]\nconnectivity = delaunay(dim, numpoints, coordinates)\n# output\n3×2 Array{Int32,2}:\n 4  4\n 2  3\n 1  1\n```\n\n```julia\nusing MiniQhull\ncoordinates  = [0 0 1 1; 0 1 0 1]\nconnectivity = delaunay(coordinates)\n# output\n3×2 Array{Int32,2}:\n 4  4\n 2  3\n 1  1\n```\n\n```julia\nusing MiniQhull, StaticArrays\ndim = 5\nnpts = 500\npts = [SVector{dim, Float64}(rand(dim)) for i = 1:npts];\nflags = \"qhull d Qbb Qc QJ Pp\" # custom flags\nconnectivity = delaunay(pts, flags)\n```\n\n## Installation\n\n`MiniQhull` is a registered Julia package. `MiniQhull` can be installed using the command:\n\n```\npkg\u003e add MiniQhull\n```\n\n`MiniQhull` depends two binary dependencies which are build for all Platforms by [BinaryBuilder](https://binarybuilder.org/):\n\n  - [Qhull_jll](https://github.com/JuliaBinaryWrappers/Qhull_jll.jl)\n  - [QhullMiniWrapper_jll](https://github.com/JuliaBinaryWrappers/QhullMiniWrapper_jll.jl)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgridap%2Fminiqhull.jl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgridap%2Fminiqhull.jl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgridap%2Fminiqhull.jl/lists"}