def addBrepOfSubsetOfFaces_RemoveAt(): rgBrep1 = rgBrep_In.Duplicate() # Create list of non-extracted faces. # This is faster than looping through all faces while testing each. idx_rgFaces_ToRemove = list( set(range(rgBrep1.Faces.Count)) - set(idxFaces)) idx_rgFaces_ToRemove.sort(reverse=True) stopwatch = Stopwatch() stopwatch.Start() [rgBrep1.Faces.RemoveAt(idx) for idx in idx_rgFaces_ToRemove] stopwatch.Stop() if bDebug: print "{} seconds for Faces.RemoveAt".format(stopwatch.Elapsed.TotalSeconds) # Separate any brep shells of modified brep and act based on shell quantity. stopwatch.Restart() rgBreps_per_shell = rg.Brep.CreateBooleanUnion( [rgBrep1], tolerance=0.0, manifoldOnly=False) stopwatch.Stop() if bDebug: print "{} seconds for CreateBooleanUnion".format( stopwatch.Elapsed.TotalSeconds) if rgBreps_per_shell is None: if bDebug: print "Error in attempting to separate brep shells. No objects have been modified." return rgBrep1.Dispose() attr = rdBrep_In.Attributes.Duplicate() if not bRetainLayer: attr.LayerIndex = sc.doc.Layers.CurrentLayerIndex if not bRetainColor: attr.ColorSource = rd.ObjectColorSource.ColorFromLayer stopwatch.Restart() gBreps_1Shell = map(lambda x: sc.doc.Objects.AddBrep(x, attr), rgBreps_per_shell) stopwatch.Stop() if bDebug: print "{:.1f} seconds for AddBrep".format(stopwatch.Elapsed.TotalSeconds) map(lambda x: x.Dispose(), rgBreps_per_shell) return gBreps_1Shell
import datetime import os import os.path as op import clr clr.AddReference("RevitAPI") import Autodesk.Revit.UI from Autodesk.Revit.DB import FilteredElementCollector as Fec from Autodesk.Revit.DB import FilteredWorksetCollector as Fwc from Autodesk.Revit.DB import BuiltInCategory, ModelPathUtils, WorksetKind from System.Diagnostics import Stopwatch # TODO check for existing folders and csv # TODO create/update csv from check modules stopwatch = Stopwatch() stopwatch.Start() sqft_sqm = 10.764 doc = __revit__.ActiveUIDocument.Document def count_views(view_type): collector = Fec(doc).OfClass(Autodesk.Revit.DB.View).ToElements() counter = 0 for view in collector: if not view.IsTemplate: if view.ViewType.ToString() == view_type: counter += 1 return str(counter)
clr.AddReference("System") import System from System import Array from System.Diagnostics import Stopwatch from DHI.Generic.MikeZero import eumUnit, eumItem, eumQuantity from DHI.Generic.MikeZero.DFS import * from DHI.Generic.MikeZero.DFS.dfs123 import * infile = "..\..\TestData\data_ndr_roese.dfs0" # Load the file dfs0File = DfsFileFactory.DfsGenericOpen(infile) # Read times and data timer = Stopwatch() timer.Start() t = [] data = [] for ii in xrange(dfs0File.ItemInfo.Count): data.append([]) for it in xrange(dfs0File.FileInfo.TimeAxis.NumberOfTimeSteps): for ii in xrange(dfs0File.ItemInfo.Count): itemData = dfs0File.ReadItemTimeStep(ii + 1, it) if (ii == 0): t.append(itemData.Time) data[ii].append(itemData.Data[0]) timer.Stop() dfs0File.Close() print "Did app. {0} .NET calls per second".format(
def F(): a, b = 0, 1 yield a yield b while True: a, b = b, a + b yield b if __name__ == '__main__': sw = Stopwatch() fib_calc = Fib() f = F() sw.Start() print fib_calc(18) sw.Stop() time_taken = sw.ElapsedMilliseconds print time_taken sw.Start() print[f.next() for i in xrange(18)] sw.Stop() print sw.ElapsedMilliseconds