Space.outside not means „only outside of building“, so False means nothing

This commit is contained in:
Laura Klünder 2017-06-11 13:18:25 +02:00
parent aa1e419f56
commit 6a8b7e33ae
3 changed files with 28 additions and 4 deletions

View file

@ -24,8 +24,6 @@ class EditorViewSet(ViewSet):
for space in spaces.values():
if space.outside:
space.geometry = space.geometry.difference(buildings_geom)
else:
space.geometry = space.geometry.intersection(buildings_geom)
columns_geom = cascaded_union([column.geometry for column in space.columns.all()])
space.geometry = space.geometry.difference(columns_geom)
space_holes_geom = cascaded_union([hole.geometry for hole in space.holes.all()])
@ -103,7 +101,6 @@ class EditorViewSet(ViewSet):
other_space.geometry = other_space.geometry.difference(buildings_geom)
other_space.color = 'rgba(255, 255, 255, 0.7)'
else:
other_space.geometry = other_space.geometry.intersection(buildings_geom)
other_space.color = 'rgba(255, 255, 255, 0.3)'
results = chain(

View file

@ -0,0 +1,27 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.2 on 2017-06-11 11:17
from __future__ import unicode_literals
from django.db import migrations, models
def secondary_level_spaces_inside(apps, schema_editor):
Space = apps.get_model('mapdata', 'Space')
Space.objects.filter(section__on_top_of__isnull=False).update(outside=False)
class Migration(migrations.Migration):
dependencies = [
('mapdata', '0010_on_top_of'),
]
operations = [
migrations.AlterField(
model_name='space',
name='outside',
field=models.BooleanField(default=False, verbose_name='only outside of building'),
),
migrations.RunPython(secondary_level_spaces_inside),
]

View file

@ -54,7 +54,7 @@ class Space(SpecificLocation, SectionGeometryMixin, models.Model):
)
geometry = GeometryField('polygon')
category = models.CharField(verbose_name=_('category'), choices=CATEGORIES, default='normal', max_length=16)
outside = models.BooleanField(default=False, verbose_name=_('is outside of building'))
outside = models.BooleanField(default=False, verbose_name=_('only outside of building'))
class Meta:
verbose_name = _('Space')