RectangleService.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import VectorType from '../enum/VectorType.js'
  2. import Rectangle from '../Geometry/Rectangle.js'
  3. import { floorplanService } from './FloorplanService'
  4. export default class RectangleService {
  5. constructor() {
  6. }
  7. createRectangle(leftTopPosition,rightDownPosition,vectorId,floor) {
  8. const rectangle = new Rectangle(leftTopPosition,rightDownPosition,vectorId,floor)
  9. floorplanService.addRectangle(rectangle)
  10. return rectangle
  11. }
  12. updateRectangleVertex(vectorId,newPosition,index){
  13. const rectangle = floorplanService.getRectangle(vectorId)
  14. rectangle.updatePoints(newPosition,index)
  15. }
  16. setRectangleInfo(rectangleInfo) {
  17. let rectangle = floorplanService.getRectangle(rectangleInfo.vectorId)
  18. rectangle.vectorId = rectangleInfo.vectorId
  19. rectangle.angle = rectangleInfo.angle
  20. rectangle.color = rectangleInfo.color
  21. rectangle.points = JSON.parse(JSON.stringify(rectangleInfo.points))
  22. }
  23. deleteRectangle(rectangleId, floorNum) {
  24. floorplanService.deleteRectangle(rectangleId, floorNum)
  25. }
  26. }
  27. const rectangleService = new RectangleService()
  28. export { rectangleService }