diff --git a/src/GraphProductOperations.jl b/src/GraphProductOperations.jl index 1999647c6..b42000c4d 100644 --- a/src/GraphProductOperations.jl +++ b/src/GraphProductOperations.jl @@ -42,7 +42,7 @@ function propagateBelief( dfg::AbstractDFG, # few more data requirements varType = getVariableType(destvar) M = getManifold(varType) - # @info "BUILDING MKD" varType M + # @info "BUILDING MKD" varType M isPartial.(dens) # take the product mkd = AMP.manifoldProduct(dens, M, Niter=1, oldPoints=oldpts, N=N) diff --git a/src/services/ApproxConv.jl b/src/services/ApproxConv.jl index 59abc6760..cccaf5ebb 100644 --- a/src/services/ApproxConv.jl +++ b/src/services/ApproxConv.jl @@ -165,6 +165,7 @@ function calcProposalBelief(dfg::AbstractDFG, end +# specifically the PartialPriorPassThrough dispatch function calcProposalBelief(dfg::AbstractDFG, fct::DFGFactor{<:CommonConvWrapper{<:PartialPriorPassThrough}}, target::Symbol, diff --git a/src/services/EvalFactor.jl b/src/services/EvalFactor.jl index ab8c2de3f..963f164c2 100644 --- a/src/services/EvalFactor.jl +++ b/src/services/EvalFactor.jl @@ -341,9 +341,16 @@ function evalPotentialSpecific( Xi::AbstractVector{<:DFGVariable}, inflateCycles=inflateCycles, skipSolve=skipSolve, _slack=_slack ) # - # ## do info per coord + # FIXME do info per coord # ipc_ = _calcIPCRelative(Xi, ccwl, hyporecipe, sfidx) ipc = ones(getDimension(Xi[sfidx])) + if isPartial(ccwl) + # FIXME this is a workaround until better _calcIPCRelative can be used + msk_ = setdiff(1:length(ipc), ccwl.usrfnc!.partial) + for _i in msk_ + ipc[_i] = 0.0 + end + end # return the found points, and info per coord return ccwl.params[ccwl.varidx], ipc