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.
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.