Подтвердить что ты не робот

Есть ли библиотека Java для написания программы рисования?

Мне нужно написать простое приложение Java GUI, которое, в основном, позволяет пользователю отмечать области в изображении легкого КТ.

Чтобы упростить процесс маркировки, важно, чтобы программа предоставляла некоторые базовые инструменты/функции, похожие на программу рисования, например, MS Paint, например, отмену/повтор, ширину маркера (кисти) и заливку области.

Есть ли какая-либо библиотека Java, которая предоставляет компоненты для записи программы рисования?

4b9b3361

Ответ 1

Я предлагаю вам взглянуть на ImageJ. Большим плюсом является его корень в медицинской области, и он расширяется через пользовательский плагин. Следующие части взяты из ImageJ Wikipedia.

ImageJ - это общедоступное, основанное на Java программа обработки изображений, разработанная на Национальные институты здравоохранения. ImageJ был разработан с открытым архитектуры, которая обеспечивает расширяемость через плагины Java и записываемые макросы.

И если вы не найдете функциональность в соответствии с вашими потребностями, это позволяет вам написать собственный плагин.

Пользовательские плагины позволяют для решения многих задач обработки изображений и проблемы анализа, из трехмерная живая клетка визуализации, радиологическому изображению обработка, множественная система обработки изображений сравнение данных с автоматизированными гематологические системы.

Единственная проблема, которую я могу предвидеть, - это количество дополнительных вещей, которые вы должны отправить вместе с функциональными возможностями, которые вы хотите реализовать.

Если вы хотите избежать вышеупомянутой проблемы, обратитесь к @Zack's. В дополнение к этому посмотрите на них:

Ответ 2

Processing позволяет рисовать фигуры, задавать толщину и цвета линий, отображать изображения и выполнять многие другие функции рисования в Java. Его можно использовать в качестве библиотеки Java и интегрировать в приложение Swing.

Вот пример Образец обработки:

void setup() {
  size(400, 400);  // set window size to 400 x 400 pixels
  PImage lungImg = loadImage("http://i.stack.imgur.com/gwyp0.jpg");
  image(lungImg, 0, 0);
}

void draw() {
}

void mousePressed() {
  noFill();          // no fill color for the circle
  stroke(255, 0, 0); // set pen color to red
  strokeWeight(5);   // set line thickness to 5 pixels

  // draw ellipse at mouse position, 50 pixels height & width (i.e. a circle)
  ellipse(mouseX, mouseY, 50, 50); 
}

Это будет работать самостоятельно в среде обработки IDE, которая также добавит синтаксический сахар. Это "реальная" Java внизу; методы в приведенном выше коде можно найти в классе PApplet.

Щелкает места красным кружком. Здесь полученное приложение:

enter image description here

Ответ 3

Если вы хотите сделать настольное приложение, вы, вероятно, будете использовать Swing.

Для рисования на холсте, в частности, см. Java 2D API.

Отменить/повторить можно с помощью шаблона проектирования команд.

Ответ 4

Просмотрите gef и рисуйте 2d из eclipse. Draw2D обеспечивает возможность рендеринга графики поверх swt. GEF предоставляет структуру MVC, а также структуру команд для отмены/повтора. Существует кривая обучения, но GEF действительно мощный.