{"id":13777678,"url":"https://github.com/Naoghuman/lib-tile","last_synced_at":"2025-05-11T11:34:07.127Z","repository":{"id":82696316,"uuid":"64787498","full_name":"Naoghuman/lib-tile","owner":"Naoghuman","description":"Lib-Tile is a multi Maven project written in JavaFX and NetBeans IDE 8 and provides the functionalities to use and handle easily Tiles in your JavaFX application.","archived":true,"fork":false,"pushed_at":"2017-08-13T14:54:26.000Z","size":13542,"stargazers_count":14,"open_issues_count":4,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-30T06:00:41.534Z","etag":null,"topics":["icon","icons","image","images","java","java-8","javafx","libraries","library","maven","maven-multimodule","netbeans","netbeans-ide","overlay","tile","transparency","transparent"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Naoghuman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-08-02T19:46:10.000Z","updated_at":"2023-06-12T04:45:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"4325bcb3-6c3e-46db-8e7a-fdd170dec047","html_url":"https://github.com/Naoghuman/lib-tile","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naoghuman%2Flib-tile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naoghuman%2Flib-tile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naoghuman%2Flib-tile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naoghuman%2Flib-tile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Naoghuman","download_url":"https://codeload.github.com/Naoghuman/lib-tile/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225043185,"owners_count":17411946,"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":["icon","icons","image","images","java","java-8","javafx","libraries","library","maven","maven-multimodule","netbeans","netbeans-ide","overlay","tile","transparency","transparent"],"created_at":"2024-08-03T18:00:47.098Z","updated_at":"2024-11-17T13:31:02.760Z","avatar_url":"https://github.com/Naoghuman.png","language":"Java","funding_links":[],"categories":["Libraries, Tools and Projects"],"sub_categories":[],"readme":"Lib-Tile\n===\n\n\n\nIntention\n---\n\n`Lib-Tile` is a multi [Maven] project written in [JavaFX] and [NetBeans IDE] \nand provides the functionalities to use and handle easily [Tile]s in your [JavaFX] \napplication.\n\nA [Tile] is per definition a little transparent [Image] which overlay a \nbackground-color or -image with the help of repetitions from the image in a layer.\n\nThe current `version` is `0.2.0` from 08.13.2017 (MM.dd.yyyy).\n\n_Image:_ Crimson Night \u0026#040;Dark / Landscape\u0026#041; with different tile images\n![different-tile-images_v0.3.0.png][different-tile-images_v0.3.0]\n\n\u003e __Hint__  \n\u003e Normally only one [Tile] can shown simultaneously. For demonstration purpose \n\u003e I have merge different [Tile]s in one picture.\n\n\u003e __Hint__  \n\u003e This image is from the webpage https://wall.alphacoders.com. The image haven't \n\u003e neither a `created by` or `shared by` flag \u0026#040;see http://alphacoders.com/site/faq \u0026#041;. \n\u003e If anyone is the autor and won't that I use this image here in my open souce \n\u003e project plz send me an email \u0026#040;see [Contact](#Contact)\u0026#041; and I will \n\u003e remove it. Thanks for your great work :smiley:.\n\n\n\nContent\n---\n\n* [Demo](#Demo)\n* [Libraries](#Libraries)\n    - [Lib-Tile-Core](#LiTiCo)\n    - [Lib-Tile-TransparentTextures](#LiTiTrTe)\n    - [Lib-Tile-TransparentTextures-Images](#LiTiTrTeIm)\n    - [Lib-Tile-Customized-Examples](#LiTiCuEx)\n* [Download](#Download)\n* [Requirements](#Requirements)\n* [Installation](#Installation)\n* [Documentation](#Documentation)\n* [Contribution](#Contribution)\n* [License](#License)\n* [Autor](#Autor)\n* [Contact](#Contact)\n\n\n\nDemo\u003ca name=\"Demo\" /\u003e\n---\n\nThe application [Lib-Tile-Demo] shows a `demonstration` how to use and handle \nthe features from the libraries in the project `Lib-Tile`. \n\n_Image:_ Demo application  \n![demo_v0.3.0.png][demo_v0.3.0]\n\n\u003e __Hint__  \n\u003e The library [Lib-Tile-Customized-Examples](#LiTiCuEx) provides different examples \n\u003e about `reduced`, `mixed` and `own` [TileSet]s. This examples are shown in the \n\u003e tab `Customized Tiles`.\n\nFor more informations and examples plz see the [ReadMe from Lib-Tile-Demo].\n\n\n\nLibraries\u003ca name=\"Libraries\" /\u003e\n---\n\nLike I said before `Lib-Tile` is a multi [Maven] project which contains different \n`sub-libraries`. Which sub-libraries are the best for you depends from your \nrequirements in your project.\n\nTo use `Lib-Tile` in your project you need minimal the library `Lib-Tile-Core` \nplus a concrete implementation from an [TileLoader] which loads your own [Tile]s \nimages. How that work will be explained in the sub-project [Lib-Tile-Demo](#LiTiDe) \nor have a look into the class [TransparentTexturesTileLoader] from the library \n[Lib-Tile-TransparentTextures-Images](#LiTiTrTeIm).\n\nNatural you can use additional libraries which contains predefined `tilesets`. \nCurrently supported is [Transparent Textures] with the libraries \n[Lib-Tile-TransparentTextures](#LiTiTrTe) and [Lib-Tile-TransparentTextures-Images](#LiTiTrTeIm).\n\nIn the library [Lib-Tile-Customized-Examples](#LiTiCuEx) different examples shows \nhow to used a `reduced`, `mixed` and / or `own` [TileSet].\n\n\n### Lib-Tile-Core\u003ca name=\"LiTiCo\" /\u003e\n\nThe library `Lib-Tile-Core` provides the API to load a [Tile] (which is per definition \na little transparent Image) as a [Background] or an [Image] with a concrete \nimplementation from a [TileLoader].\n\nThe main point for access the functionalities from this `API` is the class [TileProvider]. \nFor example with the method TileProvider#loadAsBackground(TileLoader, Tile) the developer \ncan load a [Tile] as an [Background].\n\n_Class [TileProvider]:_\n```java\n/**\n * The singleton {@code TileProvider} allowed the developer access to all relevant \n * methods in context from the {@code API} from the library {@code Lib-Tile-Core}.\n * \u003cp\u003e\n * For example with the methods {@code getDefaultTile(XY)} a concrete instance from \n * the {@code Inteface} {@link com.github.naoghuman.lib.tile.core.Tile} can be created.\n * \u003cbr\u003e\n * With the method {@code getDefaultValidator()} the developer have access to a \n * default implementation from the {@code Inteface} \n * {@link com.github.naoghuman.lib.tile.core.TileValidator}.\n *\n * @author Naoghuman\n * @since  0.2.0\n * @see    com.github.naoghuman.lib.tile.core.Tile\n * @see    com.github.naoghuman.lib.tile.core.TileValidator\n */\npublic final class TileProvider\n```\n\nFor more informations and examples plz see the [ReadMe from Lib-Tile-Core].\n\n\n### Lib-Tile-TransparentTextures\u003ca name=\"LiTiTrTe\" /\u003e\n\nWith the library `Lib-Tile-TransparentTextures` the developer have access to the \ntileset `Transparent Textures` from the internet page https://www.transparenttextures.com/ \nthrough the enum `TransparentTexturesTile`. Momentary that are `396` [Tile]s.\n\nThe tile images from this tileset are outsourced in a own library \n`Lib-Tile-TransparentTextures-Images` to reduce the size from this library. One \nmore advance is that you can use an `own` [TileLoader] in combination with the \nlibrary `Lib-Tile-TransparentTextures`. So you don't need to include the library \n`Lib-Tile-TransparentTextures-Images` into your project which size is momenatry \n`13MB`.\n\n_Class [TransparentTexturesTile]:_\n```java\n/**\n/**\n * The \u003ccode\u003eenum\u003c/code\u003e TransparentTexturesTileSet is a collection from \n {@link com.github.naoghuman.lib.tile.core.Tile}s which representated the \n * \u003ccode\u003eTileset\u003c/code\u003e from the internet page \u003ca href=\"https://www.transparenttextures.com/\"\u003ehttps://www.transparenttextures.com/\u003c/a\u003e.\n * \u003cp\u003e\n * The individual {@link com.github.naoghuman.lib.tile.core.Tile} can be loaded over the class \n * {@link com.github.naoghuman.lib.tile.core.TileProvider} with the help from the concrete class \n * {@link com.github.naoghuman.lib.tile.transparenttextures.images.TransparentTexturesTileLoader}.\u003cbr\u003e\n * See there the methods \n * {@link com.github.naoghuman.lib.tile.core.TileProvider#loadAsBackground(com.github.naoghuman.lib.tile.core.TileLoader, com.github.naoghuman.lib.tile.core.Tile) }\n * and {@link com.github.naoghuman.lib.tile.core.TileProvider#loadAsImage(com.github.naoghuman.lib.tile.core.TileLoader, com.github.naoghuman.lib.tile.core.Tile) }.\n * \u003cp\u003e\n * Additional informations:\u003cbr\u003e\n * The parameters from the initialisation in this \u003ccode\u003eTileset\u003c/code\u003e will be validate with the class \n * {@link com.github.naoghuman.lib.tile.core.internal.DefaultTileValidator}. \u003ccode\u003eDefaultTileValidator\u003c/code\u003e \n * allowed basic checks, for example if a {@link java.lang.String} is \u003ccode\u003eNULL\u003c/code\u003e or \u003ccode\u003eEMPTY\u003c/code\u003e.\n * \n * @author Naoghuman\n * @see com.github.naoghuman.lib.tile.core.Tile\n * @see com.github.naoghuman.lib.tile.core.TileLoader\n * @see com.github.naoghuman.lib.tile.core.TileProvider\n * @see com.github.naoghuman.lib.tile.core.TileValidator\n * @see com.github.naoghuman.lib.tile.core.internal.DefaultTileValidator\n * @see com.github.naoghuman.lib.tile.transparenttextures.images.TransparentTexturesTileLoader\n */\npublic final class TransparentTexturesTileSet extends TileSet {\n    \n    private static final String SCOPE = TransparentTexturesTileLoader.getDefault().getScope();\n\n    /**\n     * The \u003ccode\u003eJava\u003c/code\u003e representation from the tile: 3Px Tile\n     */\n    public static final Tile TT_3PX_TILE = TileProvider.getDefault().getDefaultTile(SCOPE, \"tt-3px-tile.png\", \"3Px Tile\", 100, 100, \"Gre3g\", \"http://gre3g.livejournal.com/\"); // NOI18N\n    \n    /**\n     * The \u003ccode\u003eJava\u003c/code\u003e representation from the tile: 45 Degree Fabric (Dark)\n     */\n    public static final Tile TT_45_DEGREE_FABRIC_DARK = TileProvider.getDefault().getDefaultTile(SCOPE, \"tt-45-degree-fabric-dark.png\", \"45 Degree Fabric (Dark)\", 315, 315, \"Atle Mo\", \"http://atle.co/\"); // NOI18N\n    \n    ...\n}\n```\n\nFor more informations and examples plz see the [ReadMe from Lib-Tile-TransparentTextures].\n\n\n### Lib-Tile-TransparentTextures-Images\u003ca name=\"LiTiTrTeIm\" /\u003e\n\nThe library `Lib-Tile-TransparentTextures-Images` contains all images from the \ntileset `Transparent Textures` which can be loaded with the help from the class\n[TransparentTexturesTileLoader] (which is contained in the library `Lib-Tile-TransparentTextures`).\n\n_Class [TransparentTexturesTileLoader]:_\n```java\n/**\n * The singleton \u003ccode\u003eTransparentTexturesTileLoader\u003c/code\u003e is a concrete implementation \n * from the \u003ccode\u003eInterface\u003c/code\u003e {@link com.github.naoghuman.lib.tile.core.TileLoader}.\n * \u003cp\u003e\n * With this class it's possible to load a {@link com.github.naoghuman.lib.tile.core.Tile} \n * (which is per definition a little transparent Image) from the enum \n * {@link com.github.naoghuman.lib.tile.transparenttextures.TransparentTexturesTile} as a \n * {@link javafx.scene.layout.Background} or an {@link javafx.scene.image.Image} with the \n * help from {@link com.github.naoghuman.lib.tile.core.TileProvider#loadAsBackground(TileLoader, Tile)} \n * or {@link com.github.naoghuman.lib.tile.core.TileProvider#loadAsImage(TileLoader, Tile)}.\n *\n * @author Naoghuman\n * @see com.github.naoghuman.lib.tile.core.Tile\n * @see com.github.naoghuman.lib.tile.core.TileLoader\n * @see com.github.naoghuman.lib.tile.core.TileProvider\n * @see com.github.naoghuman.lib.tile.transparenttextures.TransparentTexturesTile\n * @see javafx.scene.layout.Background\n * @see javafx.scene.image.Image\n */\npublic final class TransparentTexturesTileLoader extends TileLoader\n```\n\nFor more informations and examples plz see the [ReadMe from Lib-Tile-TransparentTextures-Images].\n\n\n### Lib-Tile-Customized-Examples\u003ca name=\"LiTiCuEx\" /\u003e\n\nThe library `Lib-Tile-Customized-Examples` provides different examples about \n`CustomizedTileSets`. There will be following demonstrations:\n* An example which shows how to implemente a `reduced` TileSet. A reduced TileSet \n  contains different predefined `Tiles` from an existing `TileSet` which is in this\n  example `TransparentTextures`.\n* The next example _(will be implemented in the future)_ shows an `mixed` TileSet. \n  A mixed TileSet contains predefined and own Tiles.\n* The last example _(will be implemented in the future)_ shows an `own` TileSet. \n  Like `own` means this example contains only own Tiles.\n\n_Class [CustomizedExampleReducedTileSet]:_\n```java\n/**\n * TODO\n * \n * @author Naoghuman\n * @since  0.2.0\n */\npublic final class CustomizedExampleReducedTileSet extends TileSet\n```\n\nFor more informations and examples plz see the [ReadMe from Lib-Tile-Customized-Examples].\n\n\n\nDownload\u003ca name=\"Download\" /\u003e\n---\n\nCurrent `version` is `0.2.0`. Main points in this release are:\n* This is a mayor update.\n* Rework the `api` from the library.\n* Add new `TileValidator`.\n* Add new sub-library `Lib-Tile-Customized-Examples`.\n* Update the documentation and JavaDoc to reflect the changes.\n\nThere are different `zip` files as download available. Plz choose the right one \nin dependency from your necessities:\n* Download Lib-Tile-Core-0.2.0.zip\n    * Contains only the library lib-tile-core-0.2.0.jar.\n    * You need to define your own [TileLoader] and your own [Tile]s images in \n      your application.\n* Download Lib-Tile-Core-And-TransparentTextures-0.2.0.zip\n    * Contains the libraries lib-tile-core-0.2.0.jar, lib-tile-transparenttextures-0.2.0.jar, \n      lib-tile-transparenttextures-images-0.2.0.jar.\n    * You can use the predefined tileset `Transparent Textures` in your application.\n* Download Lib-Tile-All-0.2.0.zip\n    * Contains the libraries lib-tile-core-0.2.0.jar, lib-tile-transparenttextures-0.2.0.jar, \n      lib-tile-transparenttextures-images-0.2.0.jar and lib-tile-customized-examples-0.2.0.jar.\n\nAccess to the downloads are here: [Download Lib-Tile]\n\n\nRequirements\u003ca name=\"Requirements\" /\u003e\n---\n\n* On your system you need [JRE 8] or [JDK 8] installed.\n\n\n\nInstallation\u003ca name=\"Installation\" /\u003e\n---\n\nDepends on your necessities you have different options like in the section \n[Download](#Download) is shown. Download the right `zip` file, extract it and \ninclude the jar file\u0026#040;s\u0026#041; into your project. That was it :smile: .\n\n\n\nDocumentation\u003ca name=\"Documentation\" /\u003e\n---\n\nThe projects `Lib-Tile` and `Lib-Tile-Demo` contains in form from the `README.md` \nand the [JavaDoc] the documentation.\n\n\n\nContribution\u003ca name=\"Contribution\" /\u003e\n---\n\n* If you find a `Bug` I will be glad if you could report an [Issue].\n* If you want to `contribute` to the project plz fork the project and do a [Pull Request].\n\n\n\nLicense\u003ca name=\"License\" /\u003e\n---\n\nThe project `Lib-Tile` and all sub-projects are licensed under [General Public License 3.0].\n\n\n\nAutor\u003ca name=\"Autor\" /\u003e\n---\n\nThe project `Lib-Tile` and all sub-projects are maintained by me, Peter Rogge. See [Contact](#Contact).\n\n\n\nContact\u003ca name=\"Contact\" /\u003e\n---\n\nYou can reach me under \u003cpeter.rogge@yahoo.de\u003e.\n\n\n\n[//]: # (Images)\n[demo_v0.3.0]:https://user-images.githubusercontent.com/8161815/29042851-02bf3cd4-7bb9-11e7-818d-28c7260c0c25.png\n[different-tile-images_v0.3.0]:https://user-images.githubusercontent.com/8161815/29042867-12cc8c62-7bb9-11e7-8780-c6c3e68a2374.png\n\n\n\n[//]: # (Links)\n[Background]:https://docs.oracle.com/javase/8/javafx/api/javafx/scene/layout/Background.html\n[CustomizedExampleReducedTileSet]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-Customized-Examples/src/main/java/com/github/naoghuman/lib/tile/customized/examples/reducedtileset/CustomizedExampleReducedTileSet.java\n[Download Lib-Tile]:https://github.com/Naoghuman/lib-tile/releases\n[General Public License 3.0]:http://www.gnu.org/licenses/gpl-3.0.en.html\n[Image]:https://docs.oracle.com/javase/8/javafx/api/javafx/scene/image/Image.html\n[Issue]:https://github.com/Naoghuman/lib-tile/issues\n[JavaDoc]:http://docs.oracle.com/javase/8/docs/technotes/tools/windows/javadoc.html\n[JavaFX]:http://docs.oracle.com/javase/8/javase-clienttechnologies.htm\n[JavaFX CSS Reference Guide]:https://docs.oracle.com/javase/8/javafx/api/javafx/scene/doc-files/cssref.html\n[JDK 8]:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html\n[JRE 8]:http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html\n[Lib-Tile]:https://github.com/Naoghuman/lib-tile\n[Lib-Tile-Demo]:https://github.com/Naoghuman/lib-tile-demo\n[LinearGradient]:https://docs.oracle.com/javase/8/javafx/api/javafx/scene/paint/LinearGradient.html\n[Maven]:http://maven.apache.org/\n[NetBeans IDE]:https://netbeans.org/\n[Pull Request]:https://help.github.com/articles/using-pull-requests\n[RadialGradient]:https://docs.oracle.com/javase/8/javafx/api/javafx/scene/paint/RadialGradient.html\n[ReadMe from Lib-Tile-Core]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-Core\n[ReadMe from Lib-Tile-Customized-Examples]:https://github.com/Naoghuman/lib-tile/tree/master/Lib-Tile-Customized-Examples\n[ReadMe from Lib-Tile-Demo]:https://github.com/Naoghuman/lib-tile-demo/blob/master/README.md\n[ReadMe from Lib-Tile-TransparentTextures]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-TransparentTextures\n[ReadMe from Lib-Tile-TransparentTextures-Images]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-TransparentTextures-Images\n[StartApplication]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-Demo/src/main/java/com/github/naoghuman/lib/tile/demo/application/StartApplication.java\n[Tile]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-Core/src/main/java/com/github/naoghuman/lib/tile/core/Tile.java\n[TileLoader]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-Core/src/main/java/com/github/naoghuman/lib/tile/core/TileLoader.java\n[TileProvider]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-Core/src/main/java/com/github/naoghuman/lib/tile/core/TileProvider.java\n[TileSet]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-Core/src/main/java/com/github/naoghuman/lib/tile/core/TileSet.java\n[Transparent Textures]:https://www.transparenttextures.com/\n[TransparentTexturesTile]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-TransparentTextures/src/main/java/com/github/naoghuman/lib/tile/transparenttextures/TransparentTexturesTile.java\n[TransparentTexturesTileLoader]:https://github.com/Naoghuman/lib-tile/blob/master/Lib-Tile-TransparentTextures/src/main/java/com/github/naoghuman/lib/tile/transparenttextures/images/TransparentTexturesTileLoader.java\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNaoghuman%2Flib-tile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNaoghuman%2Flib-tile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNaoghuman%2Flib-tile/lists"}