Skip to content

Commit 929b83e

Browse files
refactor init images, and masks
1 parent 2bc9629 commit 929b83e

File tree

2 files changed

+202
-77
lines changed

2 files changed

+202
-77
lines changed

index.js

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1723,24 +1723,28 @@ async function loadViewerImages(){
17231723

17241724

17251725

1726-
// if(g_init_image_related_layers.hasOwnProperty('init_image_group')){
1727-
1728-
// const viewer_init_image_layer = makeViewerInitImageLayer(g_init_image_related_layers['init_image_group'],g_init_image_related_layers['init_image_layer'],g_init_image_related_layers['solid_white'])//make init image viewer container layer
1729-
// const init_img_html = createViewerImgHtml('./server/python_server/init_images/',g_init_image_name,g_init_image_related_layers['init_image_group'].id)
1730-
// container.appendChild(init_img_html)
1731-
// viewer_layers.push(viewer_init_image_layer)
1732-
// await viewerImageClickHandler(init_img_html,viewer_layers)// create click handler for each images
1733-
// }
1726+
if(g_init_image_related_layers.hasOwnProperty('init_image_group')){
1727+
const viewerInitImage= new viewer.InitImage(g_init_image_related_layers['init_image_group'],g_init_image_related_layers['init_image_layer'],g_init_image_related_layers['solid_white'],'./server/python_server/init_images/')
1728+
viewer_layers.push(viewerInitImage)
1729+
// const viewer_init_image_layer = makeViewerInitImageLayer(g_init_image_related_layers['init_image_group'],g_init_image_related_layers['init_image_layer'],g_init_image_related_layers['solid_white'])//make init image viewer container layer
1730+
const init_img_html = createViewerImgHtml('./server/python_server/init_images/',g_init_image_name,g_init_image_related_layers['init_image_group'].id)
1731+
container.appendChild(init_img_html)
1732+
// viewer_layers.push(viewer_init_image_layer)
1733+
await NewViewerImageClickHandler(init_img_html,viewer_layers)// create click handler for each images
1734+
}
17341735

1735-
// if(g_mask_related_layers.hasOwnProperty('mask_group')){
1736-
// const viewer_mask_layer = makeViewerMaskLayer(g_mask_related_layers['mask_group'],g_mask_related_layers['white_mark'],g_mask_related_layers['solid_black'])//make mask viewer layer
1737-
// const mask_img_html = createViewerImgHtml('./server/python_server/init_images/',g_init_image_mask_name,g_mask_related_layers['mask_group'].id)
1738-
// container.appendChild(mask_img_html)
1736+
if(g_mask_related_layers.hasOwnProperty('mask_group')){
1737+
const viewerInitMaskImage= new viewer.InitMaskImage(g_mask_related_layers['mask_group'],g_mask_related_layers['white_mark'],g_mask_related_layers['solid_black'],'./server/python_server/init_images/')
17391738

1740-
// //add init mask image
1741-
// viewer_layers.push(viewer_mask_layer)
1742-
// await viewerImageClickHandler(mask_img_html,viewer_layers)// create click handler for each images
1743-
// }
1739+
// const viewer_mask_layer = makeViewerMaskLayer(g_mask_related_layers['mask_group'],g_mask_related_layers['white_mark'],g_mask_related_layers['solid_black'])//make mask viewer layer
1740+
const mask_img_html = createViewerImgHtml('./server/python_server/init_images/',g_init_image_mask_name,g_mask_related_layers['mask_group'].id)
1741+
container.appendChild(mask_img_html)
1742+
1743+
//add init mask image
1744+
viewer_layers.push(viewerInitMaskImage)
1745+
await NewViewerImageClickHandler(mask_img_html,viewer_layers)// create click handler for each images ,viewer_layers)// create click handler for each images
1746+
// await viewerImageClickHandler(mask_img_html,viewer_layers)// create click handler for each images
1747+
}
17441748

17451749

17461750

viewer.js

Lines changed: 182 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,16 @@
1-
21
// output image class: one image to one layer
32
// * path:
43
// * image layer
54
// * viewer()
65
// * select()
76
// * isLayerValid()
87
// * init image class: has three layers
9-
// * path :
8+
// * path :
109
// * init image group layer
1110
// * init image layer
12-
// * background layer
11+
// * background layer
1312
// * isLayerValid()
14-
// * mask class:
13+
// * mask class:
1514
// * path
1615
// * mask group
1716
// * white mask
@@ -22,80 +21,202 @@
2221

2322
const psapi = require('./psapi')
2423

25-
class ViewerImage{
26-
constructor(){
24+
class ViewerImage {
25+
constructor () {}
26+
visible (visibleOn) {}
27+
select () {}
28+
isLayerValid () {}
29+
isSameLayer (layer_id) {}
30+
}
2731

32+
class OutputImage extends ViewerImage {
33+
constructor (layer, path) {
34+
super()
35+
this.layer = layer
36+
this.path = path
37+
}
38+
visible (visibleOn) {
39+
super.visible(visibleOn)
40+
if (this.isLayerValid()) {
41+
this.layer.visible = visibleOn
2842
}
29-
visible(visibleOn)
30-
{
31-
32-
}
33-
select() {
34-
35-
}
36-
isLayerValid(){
37-
43+
}
44+
select () {
45+
super.select()
46+
if (this.isLayerValid()) {
47+
psapi.selectLayers([this.layer])
48+
// console.log(`${this.layer.id} got selected`);
3849
}
39-
isSameLayer(layer_id){
40-
50+
}
51+
isLayerValid () {
52+
super.isLayerValid()
53+
//check if layer is defined or not
54+
//true if the layer is defined
55+
//false otherwise
56+
let isValid = false
57+
if (typeof this.layer !== 'undefined') {
58+
isValid = true
4159
}
60+
return isValid
61+
}
62+
isSameLayer (layer_id) {
63+
super.isSameLayer(layer_id)
64+
const is_same = this.layer.id == layer_id
65+
return is_same
66+
}
4267
}
4368

44-
class OutputImage extends ViewerImage {
45-
constructor(layer, path) {
46-
super()
47-
this.layer = layer
48-
this.path = path;
49-
50-
69+
class InitImage extends ViewerImage {
70+
constructor (init_group, init_snapshot, solid_layer, path) {
71+
super()
72+
this.init_group = init_group
73+
this.init_snapshot = init_snapshot
74+
this.solid_layer = solid_layer
5175

52-
}
53-
visible(visibleOn)
54-
{
76+
this.path = path
77+
}
78+
visible (visibleOn) {
5579
super.visible(visibleOn)
56-
if(this.isLayerValid()){
57-
this.layer.visible = visibleOn
80+
// const isValid = this.isLayerValid()
81+
let visibleValues = []
82+
if (visibleOn) {
83+
visibleValues = [true, true, true]
84+
} else {
85+
visibleValues = [false, false, false]
5886
}
87+
88+
if (this.isLayerValid(this.init_group)) {
89+
this.init_group.visible = visibleValues[0]
90+
}
91+
if (this.isLayerValid(this.init_snapshot)) {
92+
this.init_snapshot.visible = visibleValues[1]
5993
}
60-
select() {
61-
super.select()
62-
if(this.isLayerValid()){
63-
psapi.selectLayers([this.layer])
64-
// console.log(`${this.layer.id} got selected`);
65-
}
94+
if (this.isLayerValid(this.solid_layer)) {
95+
this.solid_layer.visible = visibleValues[2]
6696
}
67-
isLayerValid(){
68-
super.isLayerValid()
69-
//check if layer is defined or not
70-
//true if the layer is defined
71-
//false otherwise
72-
let isValid = false
73-
if (typeof this.layer !== "undefined")
74-
{
75-
isValid = true
76-
}
77-
return isValid
97+
}
98+
99+
select () {
100+
super.select()
101+
102+
const selectLayers = []
103+
if (this.isLayerValid(this.init_group)) {
104+
105+
selectLayers.push(this.init_group)
106+
}
107+
// if (this.isLayerValid(this.init_snapshot)) {
108+
109+
// selectLayers.push(this.init_snapshot)
110+
// }
111+
// if (this.isLayerValid(this.solid_layer)) {
112+
// selectLayers.push(this.solid_layer)
113+
// }
114+
115+
psapi.selectLayers(selectLayers)
116+
// console.log(`${this.layer.id} got selected`);
117+
}
118+
119+
isLayerValid (layer) {
120+
super.isLayerValid()
121+
//check if layer is defined or not
122+
//true if the layer is defined
123+
//false otherwise
124+
// let isValid = [false,false,false]
125+
let isValid = false
126+
if (typeof layer !== 'undefined') {
127+
isValid = true
78128
}
79-
isSameLayer(layer_id){
80-
super.isSameLayer(layer_id)
81-
const is_same = this.layer.id == layer_id
82-
return is_same
129+
130+
return isValid
131+
}
132+
isSameLayer (layer_id) {
133+
super.isSameLayer(layer_id)
134+
let is_same = false
135+
if(this.isLayerValid(this.init_group)){
136+
is_same = this.init_group.id == layer_id
137+
83138
}
139+
return is_same
84140
}
141+
}
142+
143+
class InitMaskImage extends ViewerImage {
144+
constructor (mask_group, white_mark, solid_black, path) {
145+
super()
146+
this.mask_group = mask_group
147+
this.white_mark = white_mark
148+
this.solid_black = solid_black
85149

86-
class InitImage extends OutputImage {
87-
constructor(name) {
88-
super(name); // call the super class constructor and pass in the name parameter
150+
this.path = path
89151
}
152+
visible (visibleOn) {
153+
super.visible(visibleOn)
154+
// const isValid = this.isLayerValid()
155+
let visibleValues = []
156+
if (visibleOn) {
157+
visibleValues = [true, true, true]
158+
} else {
159+
visibleValues = [false, false, false]
160+
}
90161

91-
// speak() {
92-
// console.log(`${this.name} barks.`);
93-
// }
94-
}
162+
if (this.isLayerValid(this.mask_group)) {
163+
this.mask_group.visible = visibleValues[0]
164+
}
165+
if (this.isLayerValid(this.white_mark)) {
166+
this.white_mark.visible = visibleValues[1]
167+
}
168+
if (this.isLayerValid(this.solid_black)) {
169+
this.solid_black.visible = visibleValues[2]
170+
}
171+
}
95172

96-
97-
module.exports = {
98-
OutputImage,
99-
InitImage
173+
select () {
174+
super.select()
175+
176+
const selectLayers = []
177+
if (this.isLayerValid(this.mask_group)) {
178+
179+
selectLayers.push(this.mask_group)
180+
}
181+
// if (this.isLayerValid(this.init_snapshot)) {
182+
183+
// selectLayers.push(this.init_snapshot)
184+
// }
185+
// if (this.isLayerValid(this.solid_layer)) {
186+
// selectLayers.push(this.solid_layer)
187+
// }
188+
189+
psapi.selectLayers(selectLayers)
190+
// console.log(`${this.layer.id} got selected`);
191+
}
192+
193+
isLayerValid (layer) {
194+
super.isLayerValid()
195+
//check if layer is defined or not
196+
//true if the layer is defined
197+
//false otherwise
198+
// let isValid = [false,false,false]
199+
let isValid = false
200+
if (typeof layer !== 'undefined') {
201+
isValid = true
202+
}
203+
204+
return isValid
205+
}
206+
isSameLayer (layer_id) {
207+
super.isSameLayer(layer_id)
208+
let is_same = false
209+
if(this.isLayerValid(this.mask_group)){
210+
is_same = this.mask_group.id == layer_id
211+
212+
}
213+
return is_same
214+
}
100215
}
101216

217+
218+
module.exports = {
219+
OutputImage,
220+
InitImage,
221+
InitMaskImage,
222+
}

0 commit comments

Comments
 (0)