private boolean intersectsOtherBlocks(BlockUsedInEditingScreen block) {
        Compound<BlockUsedInEditingScreen> root = this.getParent();
        List<BlockUsedInEditingScreen> blocks = root.getChildren();

        for ( BlockUsedInEditingScreen otherBlock : blocks ) {
            if ( otherBlock != this && otherBlock != block
                    && this.intersectsAnotherNode(otherBlock) && this.haveTheSameDimensions(otherBlock) ) {
                return true;
            }
        }

        return false;
    }