Skip to first unread message

Apr 4, 2013, 1:06:23 PM4/4/13

to julia-dev

I don't know anything about this area, but Julia is good about what I'll call "support code" like reading STL files. If some of your support code is already available as FORTRAN, C, or C++ libraries, then writing a Julia interface is generally pretty easy and sometimes ridiculously easy. If some of that support code is already available in Python, Matlab, or R, you have options for interfacing with all of them:

* https://github.com/stevengj/PyCall.jl

* https://github.com/lindahua/MATLAB.jl* https://github.com/stevengj/PyCall.jl

* https://github.com/lgautier/Rif.jl

On Thu, Apr 4, 2013 at 12:48 PM, martins....@ipleiria.pt <martins....@ipleiria.pt> wrote:

I am not yet familiar with the Julia programming language itself. I am a Matlab user and I am currently running a reaserch project funded by the Portuguese National Science Foundation that aims at the development of what could be called a topological toolbox, and I was planning to do it in Matlab language. It turns out that after learning about the julia project it is clear that such an enterprise makes sense only in a language such as julia.

Question: is it safe to start developing such a package, or it is too general and would be too much to be a package? It would include for instance the possibility of reading STL files, computing basic geometrical operations on triangulated surfaces (that only depend on topology such as union, intersection, symmetric difference, etc); this will certainly overlap with other areas already under development such as graph theory, combinatorics, graphical images, etc. This is why it may not be simple to give a straight answer to my question. Also it would be very nice to engage some collaboration.

Nelson.

Apr 4, 2013, 2:54:34 PM4/4/13

to juli...@googlegroups.com

Nelson:

I am the author of the Meshes.jl package, which includes functionality for the extraction of a mesh representation of an isosurface of a 3D scalar function sampled on a grid (via marching tetrahedra) and (soon, at least, when I get it debugged) an algorithm for mesh simplification via edge collapse. michelk is the author of SurfaceMesh.jl, and is working on mesh related things as well. So you wouldn't lack for potential collaborators.

I can also say that these sorts of combinatorial-y algorithms aren't often a good fit for Matlab, but are generally right at home in Julia.

--Tracy

Apr 4, 2013, 9:02:19 PM4/4/13

to juli...@googlegroups.com

I have some very basic code to read (binary) STL files and convert them to some obscure 3D formats in https://github.com/simonster/obscure-3d-format-conversion-tools. As far as I can tell, STL is an incredibly simple format.

Simon

Simon

Apr 4, 2013, 10:12:12 PM4/4/13

to juli...@googlegroups.com

I wrote Catalan.jl, a small package about combinatorics. It is right now most focused on enumerative combinatorics (as it is close to my research topics), and I'll probably start writing some lattice-related functions now, but I'd like to expand it as much as I can, so if you need anything related, feel free to ask here or on the Github repository that I'd be happy to oblige!

I also have a package (not yet in METADATA) for geometric algebra, GeoAlg.jl[1], which I wish to develop it as much as I can to be a considerable alternative to the SymPy module[2] or to Gaigen[3]. It may prove useful to deal with some geometric operations (for example, you can use it to calculate intersections between spheres in a fully coordinate-free manner).

I'd also be happy to help you directly with your package, given enough references for me to understand it :)

Thanks,

Alessandro

May 6, 2013, 2:28:55 PM5/6/13

to juli...@googlegroups.com

We could finally translate some of the functions that were already implemented in Matlab into Julia (thanks Tom for giving the possibility to interface with Matlab, but we decided to rewrite everything directly in julia). The file topology.jl is available at (https://github.com/ghaspias/Topology) and it contains three functions: stl2tri, readstl, indexstl; of course it is supposed to be completed with others more. The function readstl does the same thing as Simon’s conversion one, it is only implemented in a different way. We also expect to complete it in order to be able to read ASCII format files.

-Tracy, does your package allows the visualization of triangulated surfaces, as the ones resulting form the readstl funtion? If not, is it too difficult to implement such a thing?

- Alessandro, do you also work with permutations? For example
will you consider a function to “remove loops” from a sequence, in the sense
that given [1 2 3 4 5 6 1 8 9 10 5 12 3 14 9 16 17 1] would return for instance
[ [17 1 6 5 10 9 16 17], [1 8 9 14 3 2 1],[5
12 3 4 5]]? The sequences are considered as directed graphs in the plane,
representing topological regions in the plane, with the interior of the region
being allways on the left, say, so that the goal of performing the above
separation is to be able to have the region well defined. This is the kind of thing we are interested: modeling geometrical entities with combinatorial ones, loosing of course much of the geometry, but keeping the topology.

Reply all

Reply to author

Forward

0 new messages

Search

Clear search

Close search

Google apps

Main menu