Mercurial > hg > orthanc-java
annotate Samples/MammographyDeepLearning/src/main/java/Rectangle.java @ 43:678bbed285a1 default tip
improved import of JNI in cmake
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 06 Sep 2024 13:53:54 +0200 |
parents | 43923934e934 |
children |
rev | line source |
---|---|
28
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
1 /** |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
2 * SPDX-FileCopyrightText: 2023-2024 Sebastien Jodogne, UCLouvain, Belgium |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
3 * SPDX-License-Identifier: GPL-3.0-or-later |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
4 **/ |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
5 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
6 /** |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
7 * Java plugin for Orthanc |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
8 * Copyright (C) 2023-2024 Sebastien Jodogne, UCLouvain, Belgium |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
9 * |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
10 * This program is free software: you can redistribute it and/or |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
11 * modify it under the terms of the GNU General Public License as |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
12 * published by the Free Software Foundation, either version 3 of the |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
13 * License, or (at your option) any later version. |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
14 * |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
15 * This program is distributed in the hope that it will be useful, but |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
16 * WITHOUT ANY WARRANTY; without even the implied warranty of |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
18 * General Public License for more details. |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
19 * |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
20 * You should have received a copy of the GNU General Public License |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
21 * along with this program. If not, see <http://www.gnu.org/licenses/>. |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
22 **/ |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
23 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
24 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
25 import java.io.Serializable; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
26 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
27 class Rectangle implements Serializable { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
28 private float x1; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
29 private float y1; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
30 private float x2; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
31 private float y2; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
32 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
33 public Rectangle(float x1, |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
34 float y1, |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
35 float x2, |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
36 float y2) { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
37 if (x1 > x2) { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
38 throw new IllegalArgumentException(); |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
39 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
40 if (y1 > y2) { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
41 throw new IllegalArgumentException(); |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
42 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
43 this.x1 = x1; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
44 this.y1 = y1; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
45 this.x2 = x2; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
46 this.y2 = y2; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
47 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
48 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
49 public float getX1() { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
50 return x1; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
51 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
52 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
53 public float getY1() { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
54 return y1; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
55 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
56 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
57 public float getX2() { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
58 return x2; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
59 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
60 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
61 public float getY2() { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
62 return y2; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
63 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
64 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
65 public float getWidth() { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
66 return x2 - x1; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
67 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
68 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
69 public float getHeight() { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
70 return y2 - y1; |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
71 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
72 |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
73 public float getArea() { |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
74 return getWidth() * getHeight(); |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
75 } |
43923934e934
added sample: deep learning for mammography
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
76 } |