Exemple #1
0
        /// <summary>
        /// 开始导出
        /// </summary>
        /// <param name="uidoc"></param>
        /// <param name="view"></param>
        /// <param name="localConfig"></param>
        /// <param name="exportType"></param>
        /// <param name="outputStream"></param>
        /// <param name="features"></param>
        /// <param name="useShareTexture"></param>
        /// <param name="progressCallback"></param>
        /// <param name="viewIds"></param>
        /// <param name="cancellationToken"></param>
        private void StartExport(UIDocument uidoc, View3D view, AppConfigSvf localConfig, ExportType exportType, Stream outputStream, Dictionary <FeatureType, bool> features, bool useShareTexture, Action <int> progressCallback, List <int> viewIds, CancellationToken cancellationToken)
        {
#if EXPRESS
            throw new NotImplementedException();
#else
            using (var log = new RuntimeLog())
            {
                var featureList   = features?.Where(x => x.Value).Select(x => x.Key).ToList() ?? new List <FeatureType>();
                var elementIdList = _ElementIds?.Where(x => x.Value).Select(x => x.Key).ToList();

                var exporter = new Bimangle.ForgeEngine.Revit.Pro.Svf.Exporter(InnerApp.GetHomePath());

                if (uidoc != null && uidoc.ActiveView.Id == view.Id)
                {
                    exporter.Export(
                        uidoc, view,
                        localConfig.LevelOfDetail, localConfig.LastTargetPath, exportType, outputStream,
                        featureList, elementIdList, viewIds,
                        log, progressCallback, cancellationToken
                        );
                }
                else
                {
                    exporter.Export(
                        view,
                        localConfig.LevelOfDetail, localConfig.LastTargetPath, exportType, outputStream,
                        featureList, elementIdList, viewIds,
                        log, progressCallback, cancellationToken
                        );
                }
            }
#endif
        }
Exemple #2
0
        /// <summary>
        /// 开始导出
        /// </summary>
        /// <param name="uidoc"></param>
        /// <param name="view"></param>
        /// <param name="setting"></param>
        /// <param name="progressCallback"></param>
        /// <param name="cancellationToken"></param>
        private void StartExport(UIDocument uidoc, View3D view, ExportSetting setting, Action <int> progressCallback, CancellationToken cancellationToken)
        {
#if EXPRESS
            throw new NotImplementedException();
#else
            using (var log = new RuntimeLog())
            {
                var exporter = new Bimangle.ForgeEngine.Revit.Pro.Svf.Exporter(InnerApp.GetHomePath());
                exporter.Handler = new ExportHandler();

                if (uidoc != null && uidoc.ActiveView.Id == view.Id)
                {
                    exporter.Export(view, uidoc, setting, log, progressCallback, cancellationToken);
                }
                else
                {
                    exporter.Export(view, setting, log, progressCallback, cancellationToken);
                }
            }
#endif
        }