def main():

    surface = []

    pt1 = [RhinoConvert.FromVectorToRhPoint(face.A) for face in _face]
    pt2 = [RhinoConvert.FromVectorToRhPoint(face.B) for face in _face]
    pt3 = [RhinoConvert.FromVectorToRhPoint(face.C) for face in _face]
    pt4 = [RhinoConvert.FromVectorToRhPoint(face.D) for face in _face]

    for p1, p2, p3, p4 in zip(pt1, pt2, pt3, pt4):
        surface.append(
            rc.Geometry.Brep.CreateFromCornerPoints(p1, p2, p3, p4, 0.01))

    return surface
def main():

    if _point != None:

        inx_point = [RhinoConvert.ConvertToOrigin(pt) for pt in _point]

        return inx_point
    else:
        return
Exemple #3
0
def main():

    if _point != None:

        inx_point = [RhinoConvert.FromRhPointToVector(pt) for pt in _point]

        return inx_point
    else:
        return
def main():

    if _geometry != None:

        inx_facegroup = [
            RhinoConvert.FromRhMeshToFacegroup(geo) for geo in _geometry
        ]

        return inx_facegroup
    else:
        return
Exemple #5
0
def main():

    if _edt:

        edt, edx = get_file_path(_edt)

        variable = 1 if _variable_ == None else _variable_

        if base_point_:
            origin = RhinoConvert.FromRhPointToVector(base_point_)
            output = GridOutput(edx, origin)
        else:
            output = GridOutput(edx)

        project_name = output.ProjectName
        date = output.SimulationDate
        time = output.SimulationTime
        variables = output.VariableName
        selected_variable = output.VariableName[variable]

        print("Grid: {0}, {1}, {2}".format(output.NumX, output.NumY,
                                           output.NumZ))

        if output.DataContent not in [1, 5, 11]:
            print(
                "Please, connect an edt file.\nYou can read Atmosphere, Radiation, Comfort."
            )
            return [None] * 7

        if _run_it and _z_mask:

            values = List[int](_z_mask)

            facades = output.GetFacades(Direction.Z)
            output.SetValuesFromBinary(edt, facades, variable)

            # filter
            facades = Facade.GetFacadesFilterByZmask(facades, values,
                                                     output.NumZ)
            if min_ != None and max_ != None:
                facades = Facade.GetFacadesByThreshold(facades, min_, max_)

            # get values
            values = Facade.GetValueZFromFacades(facades)

            # get geometry
            face = Facade.GetFacesFromFacades(facades)

            return variables, project_name, date, time, selected_variable, face, values

        return variables, project_name, date, time, selected_variable, None, None
    else:
        return [None] * 7
def main():

    if _edt:

        edt, edx = get_file_path(_edt)

        variable = 1 if _variable_ == None else _variable_

        if base_point_:
            origin = RhinoConvert.FromRhPointToVector(base_point_)
            output = GridOutput(edx, origin)
        else:
            output = GridOutput(edx)

        project_name = output.ProjectName
        date = output.SimulationDate
        time = output.SimulationTime
        variables = output.VariableName
        selected_variable = output.VariableName[variable]

        print("Grid: {0}, {1}, {2}".format(output.NumX, output.NumY,
                                           output.NumZ))

        if output.DataContent != 6:
            print("Please, connect a file of dynamic output of vegetation.")
            return [None] * 7

        if _run_it and output.DataContent == 6:

            dir = Direction.Z

            facades = output.GetFacades(dir)
            output.SetValuesFromBinary(edt, facades, variable)

            # filter
            facades = Facade.GetFacadesByDirection(facades, dir)
            if min_ != None and max_ != None:
                facades = Facade.GetFacadesByThreshold(facades, min_, max_)

            # get values
            values = Facade.GetValueZFromFacades(facades)

            # get geometry
            face = Facade.GetFacesFromFacades(facades)

            return variables, project_name, date, time, selected_variable, face, values

        return variables, project_name, date, time, selected_variable, None, None
    else:
        return [None] * 7
Exemple #7
0
def main():

    if _point:

        origin = RhinoConvert.FromRhPointToVector(_point)
        dim_x = _dim_x_ if _dim_x_ else 3.0
        dim_y = _dim_y_ if _dim_y_ else 3.0
        dim_z = _dim_z_ if _dim_z_ else 3.0
        num_x = _num_x_ if _num_x_ else 50
        num_y = _num_y_ if _num_y_ else 50
        num_z = _num_z_ if _num_z_ else 40

        dimension = CellDimension(dim_x, dim_y, dim_z)
        size = Size(origin, dimension, num_x, num_y, num_z)

        return size
    else:
        return
def main():

    if _edt:

        edt, edx = get_file_path(_edt)

        variable = 1 if _variable_ == None else _variable_

        if _dir_ == 1:
            dir = Direction.Y
        elif _dir_ == 2:
            dir = Direction.Z
        else:
            dir = Direction.X

        if base_point_:
            origin = RhinoConvert.FromRhPointToVector(base_point_)
            output = BuildingOutput(edx, origin)
        else:
            output = BuildingOutput(edx)

        project_name = output.ProjectName
        date = output.SimulationDate
        time = output.SimulationTime
        variables = output.VariableName
        selected_variable = output.VariableName[variable]

        print("Grid: {0}, {1}, {2}".format(output.NumX, output.NumY,
                                           output.NumZ))

        if output.DataContent not in [7, 10]:
            print(
                "Please, connect a file of dynamic output of buildings or solaraccess SAFAC."
            )
            return [None] * 7

        if _run_it:

            facades = output.GetFacades(dir)
            output.SetValuesFromBinary(edt, facades, variable)

            # filter
            facades = Facade.GetFacadesByDirection(facades, dir)
            if min_ != None and max_ != None:
                facades = Facade.GetFacadesByThreshold(facades, min_, max_,
                                                       dir)

            # get values from facades
            if _dir_ == 1:
                values = Facade.GetValueYFromFacades(facades)
            elif _dir_ == 2:
                values = Facade.GetValueZFromFacades(facades)
            else:
                values = Facade.GetValueXFromFacades(facades)
            # get geometry
            face = Facade.GetFacesFromFacades(facades)

            return variables, project_name, date, time, selected_variable, face, values

        return variables, project_name, date, time, selected_variable, None, None
    else:
        return [None] * 7
def main():

    if _edt:

        edt, edx = get_file_path(_edt)

        variable = 1 if _variable_ == None else _variable_
        index = 0 if _index_ == None else _index_

        if _dir_ == 1:
            dir = Direction.Y
        elif _dir_ == 2:
            dir = Direction.Z
        else:
            dir = Direction.X

        if base_point_:
            origin = RhinoConvert.FromRhPointToVector(base_point_)
            output = GridOutput(edx, origin)
        else:
            output = GridOutput(edx)

        project_name = output.ProjectName
        date = output.SimulationDate
        time = output.SimulationTime
        variables = output.VariableName
        selected_variable = output.VariableName[variable]

        print("Grid: {0}, {1}, {2}".format(output.NumX, output.NumY,
                                           output.NumZ))

        if output.DataContent not in [1, 2, 3, 5, 8, 11]:
            print(
                "Please, connect an edt file.\nYou can read Atmosphere, Surface, Soil, Radiation, SolarAccess, Comfort"
            )
            return [None] * 7

        if _run_it:

            # Surface
            if output.DataContent in [2, 8]:
                index = 0
                dir = Direction.Z
            elif output.DataContent == 3:
                dir = Direction.Z

            facades = output.GetFacades(dir)
            output.SetValuesFromBinary(edt, facades, variable)

            # filter
            facades = Facade.GetSliceByPixelCoordinate(facades, index, dir)
            if min_ != None and max_ != None:
                facades = Facade.GetFacadesByThreshold(facades, min_, max_)

            # get values from facades
            values = Facade.GetValueZFromFacades(facades)

            # get geometry
            face = Facade.GetFacesFromFacades(facades)

            return variables, project_name, date, time, selected_variable, face, values

        return variables, project_name, date, time, selected_variable, None, None
    else:
        return [None] * 7
Exemple #10
0
def main():
    return RhinoConvert.FromFacesToMesh(List[Face](_face))