From Free Software Directory
Jump to: navigation, search

Broaden your selection: Category/Library

Category/Library Search icon.png

Java (21)

AlgART are free software Java libraries, supporting generalized smart arrays and matrices with elements of any types (1 bit, 8/16/32/64-bit integers, 32/64-bit floating point values and any other Java types), including a wide set of of 2D-, 3D- and multidimensional image processing and other algorithms, working with arrays and matrices.

Main Features

  • The libraries use 63-bit addressing of array elements (all indexes and length are represented by 64-bit long type). So, it's theoretically possible to create and process arrays and matrices containing up to 2^63-1 (~10^19) elements of any primitive or non-primitive types, if OS and hardware can provide necessary amount of memory or disk space.
  • Memory model concept allows storing AlgART arrays in different schemes, from simple Java arrays to mapped disk files; all necessary data transfers are performed automatically while every access to an element or a block of elements.
  • Most of algorithms are based on wide usage of lazy evaluations. Typical operations, like elementwise summing or geometrical matrix transformations, are implemented via lazy views of the source array or matrix.
    • For example, you can take a multidimensional matrix, rotate it (or perform any other affine or projective transform), and then extract a submatrix from the result. All these operations will be performed virtually (not requiring time), and actual calculations will be performed only at the moment of accessing elements, usually while copying the resulting matrix to a newly created one. Moreover, in many cases the libraries will "understand" itself, that the user wants to perform rotation or another transform, and will split the matrix into suitable rectangular blocks (fitting in RAM) and choose the best algorithm for this task at the moment of copying operation.
  • The libraries contain a wide set of image processing algorithms over matrices: linear filtering, mathematical morphology, rank operations, spectral transformation (FFT), etc.
  • There is also skeletonization and measuring of binary images.
Multiplatform raster graphical editor enabling simultaneous drawing between users. Project including several sub projects as server, painting framework, network library, desktop application and protocol design and documentation.
gedcom4j is a Java library for loading (parsing) and saving GEDCOM 5.5 or 5.5.1 files to/from a Java object hierarchy, which can be manipulated by your code as you see fit. Please note that gedcom4j is not an application. It is a library (jar file) that can parse, manipulate, and write GEDCOM data from your own Java programs.
Ginga is the middleware specification for the Nipo-Brazilian Digital TV System (SBTVD, from the Portuguese Sistema Brasileiro de TV Digital). Ginga is also ITU-T Recommendation for IPTV Services. It is also considered in ITU-T recommendations for Cable Broadcast services (ITU-T J.200 Recommendation series: Rec. ITU-T J.200, Rec. ITU-T J.201 and Rec. ITU-T J.202) and for Terrestrial Broadcast services by ITU-R BT.1889, ITU-R BT.1699 and ITU-R BT.1722. Ginga was developed based on a set of standardized technologies but mainly on innovations developed by Brazilian researchers. Its current reference implementation was released under the GPL license. Ginga is divided into two main integrated subsystems, which allow the development of applications following two different programming paradigms. Those subsystems are called Ginga-NCL (for declarative NCL applications) and Ginga-J (for imperative Java applications).
The Java Development Environment for Emacs (JDEE) is an add on software package for Emacs that assists in the development of software in the Java Programming Language. JDEE provides many Emacs commands that help with editing, compiling, running, debugging, and browsing large Java programs.
JDynamiTe is a tool which allows you to dynamically create documents in any format from "template" documents. Some typical usage domains of JDynamiTe are:
  • dynamic Web pages creation,
  • text document generation,
  • source code generation...
In fact, it can be useful in any case where pre-defined documents (templates) have to be dynamically populated with data. The main benefit of JDynamiTe is to allow a true separation between data (content), presentation (container) and content generation code (written in Java). JDynamiTe does not include a specific template language, and it is not a complete framework. It is a simple "brick" in your software architecture, a "glue" between your data model and your presentation model.
It finds many errors that a simple spell checker cannot detect and several grammar problems. There are a few versions available: standalone desktop client, LibreOffice extension and IceCat add-on. This entry is about the desktop client.
This is a text editor for writing math lessons and providing tools for doing all the exercises from elementary school to junior high. The software is especially designed to fulfil the needs of disabled pupils, and pupils suffering from dyspraxia in particular. The program manages the child's documents like a notebook, organized with chapters, and separating lessons, exercises and evaluations, making it very easy to navigate through the documents.
Mensa is a generic, flexible, enhanced, and efficient free software Java implementation of a pattern matching state machine as described by the 1975 paper by Alfred V. Aho and Margaret J. Corasick: _Efficient string matching: An aid to bibliographic search_. This implementation is
  • generic in that it can be used to match any type of symbols as defined by the Java template type S — e.g., it is possible to create a machine to match bytes, characters, integers, gene sequences, bit sequences, etc.;
  • flexible in that the architecture allows for granular extension, customization, or replacement of framework components;
  • enhanced in that it supports a number of useful extension not addressed in the original paper, such as whole-word matching, case-sensitivity controls, fuzzy whitespace matching, fuzzy punctuation matching, incremental matching (i.e., iterators), matching event listeners, etc.; and
  • efficient in that it performs well in terms of both time and resource usages on very large (~million term) keyword sets.
NeoTextureEdit is a procedural, filter-based texture generator. It features 2D and 3D previewing of the texture, normal map generation and rendering of textures at any resolution. It can also be used as a library to generate the textures on-the-fly.

... further results

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.