space groups in editor space view
This commit is contained in:
parent
eb326a3694
commit
0f2d63f9ff
1 changed files with 4 additions and 4 deletions
|
@ -93,16 +93,16 @@ class EditorViewSet(ViewSet):
|
||||||
|
|
||||||
return Response([obj.to_geojson(instance=obj) for obj in results])
|
return Response([obj.to_geojson(instance=obj) for obj in results])
|
||||||
elif space is not None:
|
elif space is not None:
|
||||||
space = get_object_or_404(Space.objects.select_related('level', 'level__on_top_of'), pk=space)
|
qs = Space.objects.select_related('level', 'level__on_top_of').prefetch_related('groups')
|
||||||
|
space = get_object_or_404(qs, pk=space)
|
||||||
level = space.level
|
level = space.level
|
||||||
|
|
||||||
doors = [door for door in level.doors.all() if door.geometry.intersects(space.geometry)]
|
doors = [door for door in level.doors.all() if door.geometry.intersects(space.geometry)]
|
||||||
doors_space_geom = cascaded_union([door.geometry for door in doors]+[space.geometry])
|
doors_space_geom = cascaded_union([door.geometry for door in doors]+[space.geometry])
|
||||||
|
|
||||||
levels, levels_on_top, levels_under = self._get_levels_pk(request, level.primary_level)
|
levels, levels_on_top, levels_under = self._get_levels_pk(request, level.primary_level)
|
||||||
other_spaces = Space.objects.filter(level__pk__in=levels).prefetch_related('groups')
|
other_spaces = Space.objects.filter(level__pk__in=levels)
|
||||||
other_spaces = [s for s in other_spaces
|
other_spaces = [s for s in other_spaces if s.geometry.intersects(doors_space_geom) and s.pk != space.pk]
|
||||||
if s.geometry.intersects(doors_space_geom) and s.pk != space.pk]
|
|
||||||
|
|
||||||
space.bounds = True
|
space.bounds = True
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue